Когда авторизировался в веб версии Instagram и нажал на кнопку количества друзей, то отправился get-запрос:
https://www.instagram.com/graphql/query/?query_hash=1215Z2b820144728dde7fzab0d904896a&variables={"id":"1234567890","first":24}
Когда я открываю эту ссылку в браузере, то все хорошо, получаю json данные.
Теперь пытаюсь сделать это через Yii2 httpclient
:
$client = new Client();
$response = $client->createRequest()
->setMethod('get')
->setUrl('https://www.instagram.com/graphql/query/')
->setData([
'query_hash' => '1215Z2b820144728dde7facb0d904896a',
'variables' => '{"id":"123456789","first":24}'
])
->send();
В ответ получаю 403 ошибку.
Как я понял, то в запрос еще нужно отправить нужные заголовки и куки.
Но вопрос - где их взять?
Открыв браузер networks, при переходе по ссылке, вижу разный список cookies, headers в request и response.
Потом я попробовал сделать так:
$client = new Client();
$firstResponse = $client->createRequest()
->setMethod('get')
->setUrl('https://www.instagram.com/myPage')
->send();
$secondResponse = $client->createRequest()
->setMethod('get')
->setUrl('https://www.instagram.com/graphql/query/')
->setData([
'query_hash' => '23g53g43g34fDdfsfwe23f23f23f23',
'variables' => '{"id":"1254563214","first":24}'
])
->setHeaders($firstResponse->getHeaders())
->setCookies($firstResponse->getCookies())
->send();
FirstRespons
для того, чтобы получить cookies
, headers
, но толку мало, приходят не все данные.
Как правильно это сделать?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Есть код из Woo нужно сделать так, чтобы при активном radio изменялся фон у li, в котором он находитсяКод прилагаю:
Есть ли более простой и короткий способ задать параметры в PDO? Как вы обычно это делаете?
В Symfony 3 посылает запрос на авторизацию пользователя на внешний сервис, при успешном запросе возвращается токен и данные пользователяКак...