Guzzle Post 使用 API 密钥不断导致 400 错误请求
Guzzle Post Using API Key Keeps Resulting in 400 Bad Request
我使用的是 Guzzle 6.3 版,我的请求有问题。我不断收到 400 Bad Request 错误,我不确定调试此错误的最佳方法或可能导致错误的原因。当我使用 Postman 进行设置时,相同的标准都可以正常工作。
$client = new GuzzleHttp\Client();
$body = $this->actionGenerateMessage();
try {
$response = $client->post('the/endpoint',
array(
'body' => $body,
'headers' => array(
'apikey' => 'apikeyhere',
)
)
);
} catch (RequestException $e) {
var_dump($e->getResponse()->getBody()->getContent());
}
我能够让它工作。当我尝试发送 XML 消息时,ActiveMQ 设置似乎期待 JSON 消息。
我可以通过打开 Guzzle 调试标志来确定这一点。
$client = new GuzzleHttp\Client([
'debug' => true
]);
然后将 content-type 添加到 headers。
'headers' => array(
'apikey' => 'apikeyhere',
'Content-Type' => 'application/xml',
)
希望这对处于类似情况的人有所帮助。
我使用的是 Guzzle 6.3 版,我的请求有问题。我不断收到 400 Bad Request 错误,我不确定调试此错误的最佳方法或可能导致错误的原因。当我使用 Postman 进行设置时,相同的标准都可以正常工作。
$client = new GuzzleHttp\Client();
$body = $this->actionGenerateMessage();
try {
$response = $client->post('the/endpoint',
array(
'body' => $body,
'headers' => array(
'apikey' => 'apikeyhere',
)
)
);
} catch (RequestException $e) {
var_dump($e->getResponse()->getBody()->getContent());
}
我能够让它工作。当我尝试发送 XML 消息时,ActiveMQ 设置似乎期待 JSON 消息。
我可以通过打开 Guzzle 调试标志来确定这一点。
$client = new GuzzleHttp\Client([
'debug' => true
]);
然后将 content-type 添加到 headers。
'headers' => array(
'apikey' => 'apikeyhere',
'Content-Type' => 'application/xml',
)
希望这对处于类似情况的人有所帮助。