我想知道是否有办法通过https获取Facebook用户个人资料图片的真实网址。
就像我使用https://graph.facebook.com/20926460/picture获取个人资料图片一样,
它将重定向到http://profile.ak.fbcdn.net/hprofile-ak-snc4/41539_20926460_5421452_q.jpg。
有没有办法获得第二个网址的“https”版本?或者网址是否存在?
答案 0 :(得分:2)
自从您上次查看以来,这可能在文档中发生了变化,我知道在窥探工具出来之后,每个人都对https感到兴奋。
“如果您需要通过安全连接返回图片,可以将return_ssl_resources参数设置为1:https://graph.facebook.com/xx_userid_xx/picture?return_ssl_resources=1。”
希望这不会重定向你。
答案 1 :(得分:1)
https://graph.facebook.com/20926460/picture现在重定向到https网址。
答案 2 :(得分:0)
你可以在目标网址中用https替换http,但要记住它只是暂时的,可能会超时。
也没有有效的ssl证书,但是如果你忽略它,那么将提供该文件。
如果您需要有效的认证https网址图片,则需要在服务器上设置通过该文件的代理脚本。
编辑:
至于你的评论,这是“代理脚本”的意思。
你可以把它放在你的服务器上,并用你喜欢的任何protocl / scheme来请求它。
就像是当地的照片一样。你应该验证mime类型。做一些错误处理和防止注射等,但只是给你一个图片:
<?
header("Content-Type: image/jpeg");
echo file_get_contents('https://graph.facebook.com/'.intval($_GET["id"]).'/picture');
是的,我把int cast放在那里以防止注入黑客攻击。
脚本未经测试,但应该起作用,因为file_get_contents将遵循重定向。