Я даже не имею ни малейшего представления о том, что я делаю здесь неправильно. Моя голова все испортила.
Итак, я хочу получить https://www.facebook.com/dialog/stream.publish?access_token=bla-bla
эту страницу для некоторых данных формы.
Я использую php cURL lib для этого. Моя база кода выглядит как -
$furl='https://www.facebook.com/dialog/stream.publish?access_token=bla-bla&other-pram';
$cookie_string="";
foreach( $_COOKIE as $key => $value ) {
$cookie_string .= "$key=$value;";
};
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$furl);
curl_setopt ($curl, CURLOPT_REFERER,'my domain');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt ($curl, CURLOPT_USERAGENT,$_SERVER['HTTP_USER_AGENT']);
curl_setopt ($curl, CURLOPT_COOKIE,$cookie_string);
curl_setopt($curl, CURLOPT_ENCODING, "");
$buffer = curl_exec($curl);
curl_close($curl);
//var_dump($buffer);
if (empty($buffer))
{
print "Sorry,no content.";
}
else
{
print $buffer;
}
Этот $ furl отлично работает в браузере. Но на моем сервере он показывает что-то вроде -
HTTP / 1.1 200 OK Cache-Control: частный, без кэширования, без сохранения, необходимо повторно подтвердить Срок действия: сб, 01 января 2000 00:00:00 GMT P3P: CP = "Facebook не имеет политики P3P Узнайте, почему здесь: http://fb.me/p3p" Прагма: без кэширования Set-Cookie: __utma = удалено; истекает = четверг, 01 января 1970 г. 00:00:01 по Гринвичу; путь = /; домен = .facebook.com ; httponly Set-Cookie: __utmb = удалено; expires = Четверг, 01 января 1970 г. 00:00:01 GMT; путь = /; домен = .facebook.com; httponly Set-Cookie: __utmc = удалено; expires = Чт, 01 января 1970 г. 00:00:01 по Гринвичу; путь = /; домен = .facebook.com; набор файлов cookie httponly: __utmz = удален; истекает = чт, 01 января 1970 г. 00:00:01 по Гринвичу; путь = /; domain = .facebook.com; httponly Set-Cookie: _e_Jjuf_0 = удалено; срок действия истекает четверг, 01 января 1970 г. 00:00:01 GMT; путь = /; domain = .facebook.com; httponly Set-Cookie: c1 = удалено; истекает = четверг, 01 января 1970 г. 00:00:01 по Гринвичу; путь = /; домен = .facebook.com; httpsly Set-Cookie: c2_top = удалено; истекает = чт, 01 января 1970 г. 00 : 00: 01 GMT; путь = /; домен = .facebook.com; httponly Set-Cookie: ck_expr = удалено; expires = чт, 01-J an-1970 00:00:01 GMT; Путь = /; домен = .facebook.com; httponly Set-Cookie: ckmsg = удалено; истекает = чт, 1 января 1970 г. 00:00:01 по Гринвичу; Путь = /; домен = .facebook.com; httponly Set-Cookie: datr = vG1BThzB5emc65eco5mEIJt-; истекает = чт, 8 августа 2013 г. 17:26:20 мск; Путь = /; домен = .facebook.com; httponly Set-Cookie: fb_ss = удалено; истекает = чт, 1 января 1970 г. 00:00:01 по Гринвичу; Путь = /; домен = .facebook.com; httponly Set-Cookie: fbs_undefined = удалено; истекает = чт, 1 января 1970 г. 00:00:01 по Гринвичу; Путь = /; домен = .facebook.com; httponly Set-Cookie: locale = en_US; истекает = вторник, 16 августа 2011 г. 17:26:20 GMT; Путь = /; domain = .facebook.com Set-Cookie: lsd = _G6Yd; Путь = /; домен = .facebook.com Set-Cookie: PHPSESSID = удалено; истекает = чт, 1 января 1970 г. 00:00:01 по Гринвичу; Путь = /; домен = .facebook.com; httponly Set-Cookie: wd = удалено; истекает = чт, 1 января 1970 г. 00:00:01 по Гринвичу; Путь = /; домен = .facebook.com; httponly Content-Encoding: gzip Content-Type: text / html; charset = utf-8 X-FB-Server: 10.63.23.62 X-Cnection: закрыть Transfer-Encoding: chunked Дата: вторник, 09 августа 2011 г. 17:26:20 GMT
Так что это значит, что я ЗАПИСАНО. Но все же я могу получить доступ к FB из браузера. Нужно изменить cURL ?? Я даже не понимаю, с чего начать искать ...: - [
Мы будем благодарны за любую помощь.
РЕДАКТИРОВАТЬ: код обновлен.