Я уверен, что это будет помечено как дубликат, но я просмотрел все заданные вопросы по той же теме и попробовал многие из предложенных решений, и они не сработали.
Я участвую в проекте laravel, и у меня есть почтовый запрос, отправляемый через guzzle.
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', $url, [
'headers' => [
'Authorization' => 'Bearer ' . $apiToken,
'Accept' => 'application/json',
'Content-Type' => 'application/json',
'allow_redirects' => false,
// 'allow_redirects'=>['strict'=>true]
],
'json' => json_decode($logText, true)
]);
Я продолжаю получать ответ "message": "The GET method is not supported for this route. Supported methods: POST."
Я проверено, и действительно, он отправляет запрос GET на тот же $url
, указанный выше.
Сначала у меня не было этих настроек allow_redirects
, но обе настройки были предложены в качестве потенциальных решений, когда я искал в Google . К сожалению, оба варианта приводят к одному и тому же сообщению об ошибке: The GET method is not supported for this route.
Почему мой запрос POST меняется на запрос GET?
Я также пробовал $client->post
вместо этого, и ЭТО также стало запросом GET.
Я также дважды проверил, что сообщение об ошибке GET на самом деле не приходит изнутри запроса POST: это не так. Маршрут POST вообще не обрабатывается.
PHP версия 7.2
, Laravel версия 6.0.2
, версия Guzzle 6.5.3