我一直在开发一个将使用 Graph API 进行身份验证的 facebook 应用程序,该代码明天工作得很好,但现在突然间我开始收到 Host is unreachable 错误。我正在使用的代码是:
$token_url = "https://graph.facebook.com/oauth/access_token?".
"client_id=[client_id]".
"&redirect_uri=http://www.next_big_website.com".
"&client_secret=[client_secret]".
"&code=" . $_GET['code'].
"&scope=manage_pages,publish_stream,publish_actions,read_mailbox,email".
"&response_type=token";
$response = file_get_contents($token_url);
我收到的错误是:
警告 (2): file_get_contents(https://graph.facebook.com/oauth/access_token?client_id=[client_id]&redirect_uri=http://www.next_big_website.com&client_secret=[client_secret]&code=somelong_and_ugly_code&scope=manage_pages,publish_stream,publish_actions ,read_mailbox,email&response_type=token):无法打开流:网络无法访问 [temp.php,第 112 行]
请帮我解决这个问题,因为我不知道是什么原因造成的。
好的,我进一步挖掘并找到了解决方案,这是因为 facebook 试图强制使用 IPv6,因为每当我的服务器尝试使用 IPv4 连接时,Facebook 都会拒绝我的请求,tracert 会跟踪到 facebook API 服务器的路径,然后请求被丢弃。
谢谢