[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: использование REST API для mail.ru
konkere_wins
Собственно проблем с авторизацией и посылкой запросов нет, в мане все доступно объяснено - http://api.mail.ru/docs/reference/rest/

Проблема возникла при запросе stream.post - посылает текст в раздел "что нового"... Если в параметры text и другие прописать английский текст - все работает, а если по-русски - выдает ошибку: "one of the parameters is missing or invalid: 'text','user_text'"

Запросы делаю курлом:


// вот так не работает!
$fields = "method=stream.post&app_id=12313&secure=1&session_key=13231&sig=12313"&text=привет!";

// а так работает

$fields = "method=stream.post&app_id=12313&secure=1&session_key=13231&sig=12313"&text=hello!";


if( $curl = curl_init() ) {

curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $fields);
$res = curl_exec($curl);
$res=json_decode($res, true);

echo "<pre>";
var_dump($res);
echo "</pre>";

curl_close($curl);

}


Есть догадка, что дело в кодировках... видимо mail получает вместо русского текста кракозябры и валидация не срабатывает....

Не подскажите, как правильно курлом сделать запрос с нужными кодировкой? В принципе перепробовал разные варианты:


$header[] = "Accept-Charset: utf-8";
$header[] = "Accept-Language: en-us";

curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $fields);



не работает...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.