powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / POST и X-XSRF-TOKEN - не могу сообразить как
5 сообщений из 5, страница 1 из 1
POST и X-XSRF-TOKEN - не могу сообразить как
    #39709857
AlexSSSS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть некое API. Поключаюсь нормально, с запросами через GET разобрался. А вот с POST - не догоню никак.
В описании сказано, что при успешном подключении
Код: xml
1.
2.
3.
4.
В ответ на данный запрос возвращаются следующие параметры:
•	Cookie PLAY_SESSION. 
Отсутствие в отправляемом запросе параметра "rememberme" соответствует выставленному в данном параметре значению "false".
2) При неверном выполнении запроса возвращается код 403


Далее, в описании сказано:
Код: xml
1.
Во всех POST-запросах заголовок X-XSRF-TOKEN должен иметь значение, равное значению Cookie PLAY_SESSION.


Попытался сделать так:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
.....
//подключаюсь
$ch = curl_init();      
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);   
curl_setopt($ch, CURLOPT_URL, $url);   
curl_setopt($ch, CURLOPT_HEADER, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json;charset=utf-8"));  
curl_setopt($ch,CURLOPT_POSTFIELDS,json_encode($user)); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);  
curl_setopt($ch,CURLOPT_CUSTOMREQUEST,'POST'); 
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); //Записываем куки в файл 
curl_setopt($ch, CURLOPT_COOKIEFILE,  'cookie.txt'); 
$result = curl_exec($ch);
$code=curl_getinfo($ch,CURLINFO_HTTP_CODE); 
print "Подключились!!! code=" . $code; 
print "\n"; 
curl_close($ch);
$url = 'https://ТО ЧТО МНЕ НАДО';
$MyFiltr='{"filter":{"Парам1":"","Парам2":"-1","Парам3":""},"pagination":{"from":0,"to":4}}';
echo $url;
$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); 
curl_setopt($ch,CURLOPT_CUSTOMREQUEST,'POST');     
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json;charset=utf-8;X-CSRF-Token:" . $result));
curl_setopt($ch,CURLOPT_POSTFIELDS,json_encode($MyFiltr));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);     
$result = curl_exec($ch);   
$code=curl_getinfo($ch,CURLINFO_HTTP_CODE); 


В ответе: [Invalid Json: No content to map due to end-of-input at [Source: akka.util.ByteIterator$ByteArrayIterator$$anon$1@25345c17; line: 1, column: 0]]
Что я неправильно делаю???
...
Рейтинг: 0 / 0
POST и X-XSRF-TOKEN - не могу сообразить как
    #39710405
Дормедонт Евлампиевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexSSSS,

а если в переменную $MyFilter вот так записать:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
$MyFilter = [
    'filter' => [
        'Парам1' => '',
        'Парам2' => '-1',
        'Парам3' => ''
    ],
    'pagination' => [
        'from' => 0,
        'to' => 4
    ]
];
...
Рейтинг: 0 / 0
POST и X-XSRF-TOKEN - не могу сообразить как
    #39710779
AlexSSSS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не спасло "отца русской демократии".
Постараюсь без POST-а обойтись, вроде-бы можно одним GET-от все сделать...
...
Рейтинг: 0 / 0
POST и X-XSRF-TOKEN - не могу сообразить как
    #39710812
Дормедонт Евлампиевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вот так
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
$MyFilter = [
    'filter' => [
        'Парам1' => '',
        'Парам2' => '-1',
        'Парам3' => ''
    ],
    'pagination' => [
        'from' => 0,
        'to' => 4
    ]
];
...

curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($MyFiltr));
...
Рейтинг: 0 / 0
POST и X-XSRF-TOKEN - не могу сообразить как
    #39710927
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нафига ты делаешь json_encode, если данные уже в json?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / POST и X-XSRF-TOKEN - не могу сообразить как
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]