laravel guzzle 403 forbidden



我使用guzzle将数据发送到我的API,并且我得到了例外。这是我的控制器中的代码

public function Connecter(Request $request){
    $parametre =$request->all();
    $client = new Client();
    $r = $client->post('http://myapiurl.com/login',['body'=>$parametre]);

    $user = json_decode($r->getBody(),true);
     if ($user) {
        $sis = $user['user'];
        Session::put('id', $sis['id']);
        Session::put('nom', $sis['name']);
        Session::put('role', $sis['id_roles']);
        Session::put('email', $sis['email']);
        return redirect()->route('home');
    }else{
        return redirect()->back();
    }
}

当我看到日志时,我找到了这个

[2017-09-11 16:31:25] production.error:guzzlehttp exception clientException:客户端错误响应[url] http://myapiurl.com/login [status code] [status code] 403 [quasenchy Phrase] forbidden perphidden perphidden]in/home/vol2_6/myserver.com/username/htdocs/laravel/vendor/guzzlehttp/guzzle/guzzle/src/exception/requestectectionpection.php:89 堆栈跟踪:

当我做

dd($r = $client->post('http://myapiurl.com/login',['body'=>$parametre]);
 );

我得到403禁止

以防万一对其他人有帮助。几个小时前,我登上了这个问题,因为我在登台网站上从API中遇到了" 403禁止"错误。

这个问题让我整天疯了。事实证明,问题是由于登台站点以前仅限于仅允许某些IP地址引起的。这些已添加到NGINX配置文件中,我对此一无所知。

我现在非常了。

如果您的API域使用CloudFlare,请尝试将"安全级别"设置更改为低或更低。您可以在"防火墙设置"部分下找到它。

但是,请注意,这将使您的网站处于潜在的安全漏洞中。

最新更新