我使用Facebook发布GRAPH UI发布私人消息,链接到我在facebook的应用程序.之前它工作正常,但从最近两天开始,对话框开始抛出错误:
发生错误.请稍后再试.
API错误代码:100
API错误说明:无效参数
错误消息:"链接"无效.
发送消息我正在使用代码:
function sendMessage(id) {
FB.ui({
method : 'send',
name : 'My APP',
link : 'https://apps.facebook.com/MY_APP/',
to : id,
show_error : 'true',
description : 'my description'
});
}
Run Code Online (Sandbox Code Playgroud)
我已经用Google搜索了这一点,我得到的唯一相关信息是Facebook阻止了自己域名的链接以避免垃圾邮件.因为我改变了其他实时网站的链接工作.
我需要发送链接到我的应用程序,因为我必须提供这样的功能.
我有过类似的问题,并且认为我会在这里分享调查结果.
Facebook文档中描述link参数的唯一信息并不十分有用:
link - 消息中发送的URL.
这个问题最终成了一个错误的
picture参数
"问题围绕着我们的网址是动态的,每次都需要强制缓存.我现在打电话给" https://developers.facebook.com/tools/debug/og/object "进行刷新,然后启动发送对话."
link参数,但...从上述问题和答案中做出一些推论,以及我的一些测试,有效link参数:
http://或https://facebook.com链接显然,Facebook有某种链接爬行机制,可以对link参数执行一些未知测试以确定其有效性.我只希望他们选择为我们记录.
找到了解决办法:
\n问题原因:
\nFacebook 不允许使用自己的链接来阻止垃圾邮件。
\n问题方案:
\nFacebook API 没有提供任何解决方案。
\n其他锻炼:
\n缩短 URL,但 \xe2\x80\x99 不会在 Facebook 检查提供的 URL 时起作用。\n重定向 URL,与上面相同。\n在我的例子中,我部署了一个额外的 HTML 页面,仅用于重定向到 Facebook 应用程序链接。\只需记住,当 Facebook 扫描提供的 URL 时,您应该有一个几秒钟的计时器,这样它就无法检测到该页面正在重定向到同一应用程序链接。\n我在 HTML 文件中使用了以下代码:
\n<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">\n<title>My Application</title>\n</head>\n<body>\n <p id="demo"></p>\n</body>\n<script type="text/javascript">\n var url = "https://apps.facebook.com/MY_APPLICATION_ID";\n var myVar = setInterval(function() {\n myTimer()\n }, 1000);\n var counter = 3;\n function myTimer() {\n if (counter == 0) {\n window.location.replace(url);\n window.clearInterval(myVar);\n }\n document.getElementById("demo").innerHTML = "you will be redirected in "\n + counter + " seconds...";\n counter = counter - 1;\n }\n</script>\n</html>\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
33785 次 |
| 最近记录: |