我正在创建一个创建头像的应用程序,从头像base64在服务器上创建一个图像,然后显示Facebook的共享按钮,分享刚刚创建的头像。
自定义共享按钮使用包含头像文件名的附加URL参数调用当前页面。设置此参数时(当Facebook使用共享URL抓取它时),我在头部创建og标记,并在URL参数中给出图像的路径。
没问题,一切都好。
但问题是:预览对话框没有显示头像,而 IS 在服务器上创建! 我必须多次打开对话框才能看到头像。 (打开,没有头像,取消...打开,没有头像,取消......打开啊!头像,最后!)。
Facebook URL调试器的问题相同。第一次,它没有找到头像(而它存在),第二次或第三次,确定它找到它。
创建头像时,预览不应显示头像吗?在创建图像后,服务器是否需要一些时间来启用"启用"它? (服务器是nginx)
答案 0 :(得分:0)
我建议制作一个AJAX请求强制Facebook在页面加载包含您的共享链接时从其末尾更新图像:
$.post(
'https://graph.facebook.com',
{
id: 'http://www.website.com/pagetoscrape',
scrape: true
},
function(response){
// or you could call the dialog box at this point
}
);
答案 1 :(得分:0)
昨天我遇到了这个错误,这是我的尝试
$.post(
'https://graph.facebook.com',
{
id: current+"/share/"+id,
scrape: true
},
function(response){
//alert('scrap')
setTimeout(function(){
$("#facebook").attr("href",url_facebook );
}, 800)
;
}
);
Facebook需要一点时间来获取信息,这就是为什么我使用setTimeOut,为facebook提供一点休息以获取信息