charlie

5215 经验值

有一种永远的痛叫牛腩器不支持

race好形象,跑步比赛谁跑的快就看谁的结果

老师,我效果已经出来了,但是input的placeholder内容不显示,而且也没有报错,是什么原因呢?

遇到一个非常奇怪的问题:
用vue vue-resource写的一个前端,在其他网络下均正常,唯独在中国移动下preflight的options请求会迟迟收不到,大约2min后才收到。
查了后台nginx服务器,nginx服务器能马上收到请求并回复,但是客户端的状态则一直处于content-download状态。

问题重现:
登陆后当发的请求带上Authorization:Bearer的时候,就会先发preflight请求。preflight请求则一直在content-download状态直到2min后结束,才发真正的请求。

不登陆一切都正常。
下图是我们options请求的timing图:
https://user-images.githubusercontent.com/2179160/29126162-307db946-7d50-11e7-8d49-d3ccc425da35.jpeg

目前怀疑nginx配置问题
移动的问题
vue-resource的问题。

有兴趣的同学可以可以重现一下问题
http://wzstats.xuanji.org.cn/
账号:15150000000
密码:654321

请大神提供一下排查思路

那纯api的话,该如何实现验证码呢?
我该覆写哪个controller呢,怎么实现?看到:

|        | POST     | oauth/token                             |      | \Laravel\Passport\Http\Controllers\AccessTokenController@issueToken        | throttle   |

没有session其实也有解决的办法,可以在发给前端验证码图的同时给他一个加密字符串,前端输入验证码的时候,要把这个字符串传回去,后台check。

主要这是其他人提出的需求,希望能在登陆的时候增加破解的难度,api搞验证码的确比较怪异,不知道jelly有没有什么更好的思路。
感谢!

    public function login(Request $request)
    {
        /**
         * 验证验证码
         */
        Log::info("Hello");

        if(session('captcha')!==$request->get('captcha_word'))
        {
            return $this->sendFailedLoginResponse($request);
        }

我在方法的最前面打了log,但是log并没有任何输出。依此判定...我也感觉很奇怪
使用了passport dingo api. 看起来登陆过程不从这个controller过一样。

是不是web的登陆才使用该LoginController?

目前通过Passport Password Grant Type来登陆系统拿到access token。但是在登陆的时候希望使用验证码,那么后台如何验证前端发回来的captcha的值呢。

App\Http\Controllers\AuthLoginController中覆写 public function login(Request $request) 并不起作用啊。

Laravel 5.4
Passport 3.0

恳请大神指点~~