Ошибки API Quickblox при использовании Guzzle 6

Я использую "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 \ Исключение \ ClientException (422)

Ошибка клиента: 422


person davidev    schedule 28.10.2015    source источник


Ответы (2)


422 — это код состояния HTTP — Unprocessable Entity.

Похоже, API quickblox отклоняет ваш вызов, потому что вы отправляете неправильные заголовки или тело.

Попробуйте изменить 'json' => $jsonBody на 'body' => $jsonBody и убедитесь, что $jsonBody является строкой в ​​формате JSON.

person fire    schedule 28.10.2015
comment
ничто не добавляет изменение 'json' в 'body', это то, что у меня есть внутри $jsonBody: {application_id:22337,auth_key:UcUiGsRmOZ-Fq-J,timestamp:1446051576,nonce:380128471,signature:7707eeb02b00bgsd5g7f57sgc225de2358611} - person davidev; 28.10.2015
comment
в настоящее время я использую другую библиотеку, anlutro\cURL, с жадностью я не могу сделать запрос .. любое предложение? - person davidev; 29.10.2015

Согласно документации Quickblox по ошибкам, ваша ошибка 422 возникает, когда

Пользователь с уже занятым логином

Согласно документации Quickblox по аутентификации предоставляемая метка времени должна составлять +/- 10 минут NTP.

person Shaun Bramley    schedule 31.10.2015
comment
Проблема связана с Guzzle. В настоящее время я использую другую библиотеку curl для laravel, и она работает, поэтому я думаю, что это не проблема, связанная с данными, используемыми для запроса. - person davidev; 31.10.2015
comment
Если вы включите опцию отладки, будет ли запрос, который вы отправляете, тем, что, по вашему мнению, вы отправляете, или тем, что было отправлено при использовании версии 2? - person Shaun Bramley; 01.11.2015