0
私はapiのように動作するようにLaravel Passportを設定していますが、oauth/tokenでトークンデータを取得しても、カールで使用することはできません。Laravel Passportでトークン認証を使用することはできません
私は接続するためにcurlを使用しています。接続するアプリケーションのほとんどはすでに作成されており、それらの多くは基本的なPHPを使用しているからです。
次のコードは、私のlaravelアプリケーションからtoken_typeとaccess_tokenを取得します。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://127.0.0.1:8000/oauth/token");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array ("X-Requested-With: XMLHttpRequest"));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$postData = array(
'client_id' => '6',
'client_secret' => 'Cprp9HPTYO7CsZRvv4A8MizNj9h1nLjyF6J1sElZ',
'grant_type' => 'client_credentials',
'scope' => '*'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
$ans = json_decode(curl_exec($ch));
しかし、私はページに接続するためにトークンデータを使用しようとすると、私は常にメッセージを取り戻すには、{"message":"Unauthenticated."}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://127.0.0.1:8000/api/test");
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'X-Requested-With: XMLHttpRequest',
'Accept: application/json',
'Authorization: {$ans->token_type} {$ans->access_token}',
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
print_r(curl_exec($ch));
私のルートが/ api.phpはかなり基本的なものです
Route::get('/test', function() {
return "Yes! We're testing!!";
})->middleware('client');
ミドルウェア部分を削除すれば接続できます。だから、私は認証について間違って何をしていますか?
すみません、私は恥ずべきで頭を下ろす必要があります。 – Califer