laravel中的食口不断加载,不返回值

时间:2018-08-07 10:15:09

标签: php laravel laravel-passport guzzlehttp

我使用Laravel护照进行API身份验证。我有两条路线       / api /登录 和       / oauth / token

由于我无法对客户端ID进行硬编码,并且登录从JS接收,并且参数和客户端ID在登录方法(laravel)中进行硬编码,因此我试图使用Guzzle(6.0)将值发布到oauth / token(POST请求) )。

我关注了一个youtube视频,但该视频可以正常播放,但我的视频却无法播放。 Iam使用5.6,不确定视频中使用的版本。有人可以帮忙吗?

下面是视频

https://www.youtube.com/watch?v=HGh0cKEVXPI&t=838s

下面是代码

$http = new GuzzleHttp\Client();
$request = $http->post(URI, '/oauth/token', [
    'form_params' => [
        'username' => 'bar',
        'password' => 'xxxxxx',
        'client_id' => 2,
        'grant_type' => 'password',
        'client_secret' => '00000000000000000'
    ]
]);

return $request;

3 个答案:

答案 0 :(得分:1)

您不会只返回尖括号getBody()的初始化,而是添加 $http = new GuzzleHttp\Client(); $request = $http->post(URI, '/oauth/token', [ 'form_params' => [ 'username' => 'bar', 'password' => 'xxxxxx', 'client_id' => 2, 'grant_type' => 'password', 'client_secret' => '00000000000000000' ] ]); return $request->getBody();

{{1}}

答案 1 :(得分:0)

您应该先检查状态,以确保使用

一切正常
$request->getStatusCode(); 

您可以通过

获得答复
$request->getBody();

您还可以从此处查看有关使用GuzzulHttp的完整文档 http://docs.guzzlephp.org/en/stable/

答案 2 :(得分:0)

我认为您正在尝试在内置服务器中请求。 因此,您尝试使用两台服务器发送请求。 它将起作用。

类似于 localhost:8000 localhost:9000 服务器

使用此命令

php工匠服务

php artisan服务--port = 9000

谢谢。