下面是一个POST方法,它将生成API密钥
控制器:
public function index(Request $request)
{
$response = Http::post('ENDPOINT', [
'Username' => 'ADMIN',
'Password' => 'ADMIN',
'Token' => 'TEF53...',
]);
下一个方法(POST(将创建新的数据,并使用上面的响应作为API密钥
$response2 = Http::withHeaders([
'Accept' => 'application/json',
])->post('ENDPOINT', [
'body' => [
"DocKey" => 11223333355,
...
]
]);
return json_decode($response2);
}
但在这种情况下,我得到了一个错误:
Message "Authorization has been denied for this request."
原因是以前的POST方法中没有提供API密钥
我可以将第一个方法中生成的API密钥放在第二个方法中的什么位置?
更多说明:
当我在Postman中测试第二个方法($response2(时,我需要提供从第一个方法($response(生成的API密钥,如下所示:
https://i.stack.imgur.com/TOp1b.png
如何添加以上内容(键入API密钥及其参数(?
看起来像
$response2 = Http::withHeaders([
'Accept' => 'application/json',
'Authorization' => 'eyJ...', // provide apiKey here
])->post...
$endpoint = 'ENDPOINT';
$payload = [
'DocKey' => 11223333355,
'more info' => goes here,
];
$response2 = Http::acceptJson()->withHeaders([
'Authorization' => 'API key here'
])->post($endpoint, $payload)->json();
return $response2;