Я использую «guzzlehttp / guzzle»: «^ 6.1» и Laravel 4.2
Я пытаюсь позвонить в quickblox, но вернул мне ошибку 422. Это мой код в контроллере:
$client = new GuzzleHttp\Client();
$sessionGuzzle = $client->request('POST', 'https://api.quickblox.com/session.json',['headers' => ['Content-Type' => 'application/json' , 'QuickBlox-REST-API-Version'=>'0.1.0'],'json' => $jsonBody]);
$response = $client->send($sessionGuzzle);
dd($response->json());
GuzzleHttp \ Exception \ ClientException (422)
Ошибка клиента: 422
422 — это код состояния HTTP — Unprocessable Entity.
Похоже, что API quickblox отклоняет ваш вызов, потому что вы отправляете неверные заголовки или текст.
Попробуйте изменить 'json' => $jsonBody
в 'body' => $jsonBody
и убедитесь, $jsonBody
строка в кодировке JSON
Согласно документации Quickblox на ошибки ваша ошибка 422 происходит, когда
Пользователь с уже авторизованным логином
Согласно документации Quickblox на аутентификация предоставленная временная метка должна составлять +/- 10 минут NTP.