file_get_contents()在facebook api上播放

时间:2011-04-07 06:10:27

标签: php facebook

file_get_contents() [function.file-get-contents]: SSL: Connection reset by peer in 

file_get_contents("https://api.facebook.com/method/events.invite?eid=" .  $eid . "&uids=" . json_encode($uids) . "&access_token=" . $facebook->getAccessToken())

它邀请他们选择参加活动的用户朋友however我收到了此帖子顶部的错误。经过cURL测试,同样的错误。

TESTED

我回去用cURL测试了一些东西

$url = "https://api.facebook.com/method/events.invite?eid=157437064317827&uids=" . json_encode($uids) . "&access_token=" . $facebook->getAccessToken();

$url2 = urlencode($url);
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,  2);
curl_setopt($ch, CURLOPT_URL, $url2); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$data = curl_exec($ch) or die(curl_error($ch));
curl_close($ch);`

获取错误:无法解析主机'https%3A%2F%2Fapi.facebook.com ...

2 个答案:

答案 0 :(得分:2)

您是否尝试使用Graph API,而不是弃用的API?

您可以致电:

$event_id = "EVENT_ID";
$user_ids = "ID1,ID2,ID3"; // this can be populated however, but that's the syntax
$graph_url = "https://graph.facebook.com/{$event_id}/invited/{$user_ids}";
$graph_contents = file_get_contents($graph_url);
$data = json_decode($graph_contents);

希望这会有所帮助。 :)

答案 1 :(得分:1)

您永远不应对完整网址进行网址编码。您应对URL的特定部分进行URL编码(即查询参数名称和值),但是整个URL进行URL编码将导致您的代码失败,因为URL的各个部分将无法正确分离。