我们从昨天开始经历“FB未定义”错误,因为Facebook没有提供all.js,这是核心Javascript SDK文件。
查看Firebug或Chrome开发人员工具中的NET选项卡,我可以看到get on all.js失败。
刷新几页后,它正常工作,10分钟后再次没有提供文件。
这是Facebook问题吗?显然我们没有其他网络错误,我们不在代理之后。还有其他人经历过吗? Facebook状态页面没有报告任何问题,我在Google上找不到最近的任何内容。
是“正常”吗?像Facebook限制获取基于一些“上限”或类似的东西?
答案 0 :(得分:5)
之前我遇到过同样的问题。这是我永远无法确定的东西,但它被认为是Facebook的一个问题。我的解决方案是获取all.js的副本并在本地提供服务。
答案 1 :(得分:2)
您的描述听起来像是网络问题,但是如果您异步加载SDK并尝试在完全加载之前使用FB对象,则会导致此错误,并且还可能会停止尝试加载all.js Javascript错误。
要解决此问题,请将此对FB对象的所有引用放在此页面上显示的window.fbAsyncInit函数内:https://developers.facebook.com/docs/reference/javascript/
这可能不是你的问题,但当我看到错误时,这几乎总是解决方案。
答案 2 :(得分:-1)
您必须在页面底部添加Facebook SDK all.js。
在Facebook SDK之前,您必须添加<div id="fb-root"></div>
此加载后,您可以调用函数FB。
Facebook SDK的调用必须使用document.protocol HTTPS或HTTP。
祝你好运!