我创建了一个在必须通过 https 访问的服务器上运行的 facebook 应用程序。否则它将重定向到 https 并且 signed_request 会丢失。
在应用程序设置中,我可以编辑的所有 URL 都使用 https 协议。没有以 http:// 开头的 URL(没有 s)——除了画布页面 url,我无法更改该值(它是http://facebook.com/myappname)。
但是,当我打开一个以不安全模式 (http) 安装我的应用程序的 facebook 页面时,facebook 接缝以从配置的 facebook 页面 URL 中删除该“s”并调用http://myappdomain
而不是https://myappdomain
.
我的第一个问题:我能做些什么来告诉 Facebook 不要重写我配置的 URL?(或者我在其他地方犯了错误)
我的第二个问题:如果signed_request 丢失,我想我可以加载一个空页面,并在那里放置一个javascript代码 window.top.location = https://facebook.com/somewhere。但是如果没有签名的请求,我不知道这个“某处”。是否可以使用 apaches mod rewrite 将 post 参数作为 get 参数传递?
提供应用程序的 http 版本对我来说不是解决方案(客户要求)。