2

我有以下问题:

  • 我正在创建一个 API(我是新手)
  • 有了这个 API,我想使用另一个 API 或 WebService
  • 在 Postman 中,我向 URL 发出 get 请求,它返回 OK 的 access_token,但在 Laravel 项目中它返回:"error" => "unsupported_grant_type".

这是我的代码:

use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
            'content-type' => 'application/x-www-form-urlencoded'
        ])->post('http://url:52904/Token', [
            'userName' => 'menganito',
            'password' => 'pepito',
            'grant_type' => 'password'
        ]);

        dd($response->json());

我尝试安装 ** Laravel Passport **,但我现在没有使用数据库。

4

1 回答 1

2

问题是 x-www-form-urlencoded。

这解决了我的问题(asForm)

$response = Http::asForm()->post('http://url.com', [
                'userName' => 'user',
                'password' => 'pass',
                'grant_type' => 'password'
        ]);

dd($response->json());
于 2020-09-14T13:13:12.353 回答