2010-08-21 60 views
1

file_get_contents()当我在Facebook access_token URL上调用它时返回“无法打开流”。从URL中读取内容时无法打开流

警告:的file_get_contents(https://graph.facebook.com/me?access_token=xxxxx)function.file-GET-内容]:未能打开流:在/home/manorlog/public_html/index.php没有这样的文件或目录上线109

如果我尝试手动打Facebook的URL的access_token它表明了我persional细节

我自己也尝试这个代码,并验证了它的工作原理:

$foo = file_get_contents('http://google.com'); 
echo $foo 

任何人有任何想法为什么file_get_contents()与Facebook access_token URL失败?

回答

2

我注意到的第一件事是围绕你的Facebook网址缺少的引号。此外,PHP的设置allow_url_fopen,它控制着你是否被允许打开URL作为文件。但你对Google的例子表明,至少这是有效的。我注意到的另一件事:也许你没有将SSL支持编译到PHP中? 对不起,主要是猜测。

+0

缺少的引号来自错误消息。如果allow_url_fopen关闭,它会引发错误,其他站点也无法运行...... SSL可能是最好的猜测。 – 2010-08-21 11:18:16

+0

@Pekka:正如我所说:allow_url_fopen不能。但我仍然提到过,如果他以某种方式测试了不同的php版本或设置(例如cli和apache) – data 2010-08-21 11:33:18

1

您的accesstoken可能已过期。或无效。

<?php 
$access_token = ''; 
$foo = file_get_contents("https://graph.facebook.com/me?access_token=".$access_token.""); 
echo $foo; 
?>