我正在尝试创建一个facebook应用程序,除了我用来填充第一个选择框中所选项目的第二个框的ajax部分外,一切正常。
我正在使用jquery(v1.3.2)来完成此任务。这个ajax在我为它占用空间的主机上工作得非常好,但它在facebook中不起作用。
以下是我对此问题的疑问,
我在facebook内的父选择框的onchange事件中收到此错误。
访问受限制的URI被拒绝“代码:”1012
由于
答案 0 :(得分:6)
您不能从运行脚本的域以外的其他站点请求数据。例如,如果您运行的是脚本www.example.com/script.js,那么您只能在www.exaple.com域下获取文件,而不是www.facebook.com。
有几种方法可以做到:
答案 1 :(得分:2)
使用ajax时存在一个限制,即xmlhttp请求可能不是跨域的。见https://developer.mozilla.org/En/Same_origin_policy_for_JavaScript
一个常见的解决方法是对后端脚本发出ajax请求,该脚本实际上会产生跨域请求,即cURL。
答案 2 :(得分:2)
使用FBML,您可以使用FBJS将JSON数据类型发送到您自己的脚本:
以下是文档:http://wiki.developers.facebook.com/index.php/FBJS/Examples/Ajax