【发布时间】:2023-03-21 19:41:01
【问题描述】:
我正在使用最新版本的 Facebook JS SDK - http://connect.facebook.net/en_US/sdk.js,但它会在我的开发控制台中填充大量警告:Received message of type number from http://localhost:8080, expected a string。我不明白是什么原因..
这就是我在 html 页面上初始化 sdk 的方式:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId: 1234567890, // my app id here
xfbml: true,
version: 'v2.3'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "http://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
【问题讨论】:
-
首先,这些只是警告,所以这不应该是让您的应用无法运行的事情。其次,它们可能(!)只是由您的本地测试设置引起的——使用与默认 80 不同的端口在处理 JS SDK 时可能会产生一些副作用。
-
我在 Chrome 中也看到过这种情况,当浏览器扩展使用消息传递与其注入的内容脚本进行通信时。如前所述,这些只是警告。在生产环境中再次检查。
标签: javascript facebook facebook-javascript-sdk