我正在尝试在我的 React/Laravel 应用程序中实现 GuzzleHttp 应用程序。
这是我的控制器代码:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AuthController extends Controller
{
public function login(Request $request){
$http = new \GuzzleHttp\Client;
try {
$response = $http->post(route('passport.token'), [
'form_params' => [
'grant_type' => 'password',
'client_id' => config('gocv.passport.client_id'),
'client_secret' => config('gocv.passport.client_secret'),
'username' => $request->username,
'password' => $request->password,
],
'headers' => [
// 'User-Agent' => 'testing/1.0',
'Accept' => 'application/json'
]
]);
return $response->getBody();
} catch (\GuzzleHttp\Exception\BadResponseException $e) {
if($e->getCode() == 400)
{
return response()->json('Invalid Request. Please Eneter username and password', $e->getCode());
}
else if($e->getCode() == 401)
{
return response()->json('Invalid Credentials', $e->getCode());
}
return response()->json('Something Went Wrong', $e->getCode());
}
}
}
当我尝试在此路线上执行发布请求时:(api/login
)它不会返回任何响应。服务器刚刚停止工作,我需要重新启动它。环境是 AWS Cloud9,php 版本 7.2 和 laravel 版本 5.7 只运行php artisan serve --port=8082 --host=0.0.0.0
注意:当我在其他站点例如:github.com 上发送获取请求时,它会返回响应。问题是当我尝试对同一个 IP 进行请求时。
PS。当我尝试在路线上登录时,/oauth/token
它可以工作并返回令牌
任何答案将不胜感激。谢谢。