诚然,与此相关的问题有几十个:
- facebook-javascript-connect-with-localhost-domain
- facebook-development-in-localhost
- 给定的 url 是应用程序配置不允许的
- facebook-share-dialog-failing-to-recognize-custom-reference-objects-when-posting
不幸的是,它们都没有解决我的问题。
我正在尝试使用共享对话框发布自定义打开图表故事- 所以我不必使用 javascript SDK 从我的网络应用程序向用户询问发布权限(在某些时候我们可能会自动执行此操作)。
基本上我有一个名为 take: "my-app-namespace.take" 的自定义操作和托管在http://dev.myapp.com:3000/open/actions/:action_name的对象。这些动作中的每一个都有必要的元数据来描述自己。
<meta property='fb:app_id' content='app_id'/>
<meta property='og:type' content='my-app-namespace:take'/>
<meta property='og:title' content='my_object_title'/>
<meta property='og:image' content='an_image'/>
<meta property='og:url' content='self_url'/>
单击共享按钮时,将调用以下 Javascript:
FB.ui({
method: 'share_open_graph',
action_type: 'my-app-namespace.take',
action_properties: JSON.stringify({
object:'http://dev.myapp.com:3000/open/actions/renewable_energy'
})
}, function(response){});
经过大量的摆弄,除了以下内容,我什么也得不到:
Given URL is not allowed by the Application configuration: One or more
of the given URLs is not allowed by the App's settings. It must match
the Website URL or Canvas URL, or the domain must be a subdomain of
one of the App's domains.
我的生产应用程序托管在https://myapp.com
. 我的开发网址是http://dev.myapp.com:3000
. 开发应用程序注册为生产应用程序的测试应用程序。我已经在生产和开发应用程序中创建了 Facebook 操作、对象和自定义故事。它们也有自己的命名空间,这些命名空间是动态生成的(即开发命名空间将始终用于dev.myapp.com:3000
.)。
下面是我的开发应用程序设置的屏幕截图:
我不明白是什么导致了这个错误。我可以从我的本地设置登录并被重定向。它不喜欢物体或动作吗?