Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook 如何获取securl封面URL?_Facebook_Facebook Graph Api_Ssl_Https_Cover - Fatal编程技术网

Facebook 如何获取securl封面URL?

Facebook 如何获取securl封面URL?,facebook,facebook-graph-api,ssl,https,cover,Facebook,Facebook Graph Api,Ssl,Https,Cover,我正在尝试使用以下方法获取FBpage的封面url: $fql_query_url = "https://graph.facebook.com" ."/$fb_id[id]?fields=cover" .""; try { $fql_query_result = @file_get_contents($fql_query_url); $fql_query_obj = json_decode($fql_query_result, true); } catch(Excepti

我正在尝试使用以下方法获取FBpage的封面url:

$fql_query_url = "https://graph.facebook.com"
    ."/$fb_id[id]?fields=cover"
."";
try {
    $fql_query_result = @file_get_contents($fql_query_url);
    $fql_query_obj = json_decode($fql_query_result, true);
} catch(Exception $o){   }
$cover = $fql_query_obj[cover][source];
我得到一份工作http://... url而不是https://... 网址


任何提示?

正如@CBroe所指出的,您需要通过将return\u ssl\u resources参数设置为1来指定您需要一个安全的URL:


编辑:请注意,这不是FQL Facebook查询语言,这只是一个标准API调用。

获取url后,您可以用PHP中的preg_replace替换http到https

据我测试,它运行良好

您还可以使用javascript来更改这一点

cover = cover.replace(/^http:\/\//i, 'https://');

希望这对某人有所帮助:

为什么不替换http://tohttps://Because 看起来FB安全url不同。如果尝试在开发工具中获取封面源,我会得到不同的子域安全url
cover = cover.replace(/^http:\/\//i, 'https://');