我有一个Facebook应用程序已经使用HTTP和HTTPS一段时间了。最近 - 大约一周前我认为 - HTTPS停止工作。它现在给出了“空响应”。每一次消息。
我的服务器 DOES 具有SSL证书,HTTPS可在服务器上运行。它不是商业证书,而是自签名的。
我知道HTTPS将成为10月份的要求......有谁知道:
1)可能导致空响应错误的原因,
2)根据Facebook的说法,对可接受的SSL证书有什么要求?自签名似乎不再削减它......
答案 0 :(得分:2)
过去几周我也注意到了同样的问题。这是我能够学到的东西,也许这会对你有所帮助。
问题似乎是间歇性的,它发生在一天中的某些时间,而不是其他时间。有时它只发生在一些用户身上。我已经设置了一个测试页面,只用HTML格式说Hello World,没有别的,我仍然得到错误。我检查了我的访问日志,Facebook甚至没有打到我的服务器。
我正在使用Canvas。我已将Canvas URL设置为https://。当我将其更改为http://时,问题就消失了。我已将Secure Canvas URL设置为https://,但仍然遇到此问题。我把它搞砸了,因为它给出了错误。
另一件事 - 检查画布页面返回的HTTP状态代码 - 确保它是200.有一次,我们将http重定向到https,返回302状态,facebook不喜欢这样,并给了它错误。
答案 1 :(得分:1)
自签名证书不足以呈现给最终用户。即使facebook“允许”它,用户浏览器也会首先显示安全性异常。 Godaddy拥有非常便宜的SSL证书。
答案 2 :(得分:0)
我的SSL证书已过期。我刚刚重新生成一个新的并将其放置到位。这需要一段时间才能使旧证书超出Facebook的缓存,但事情已经看起来更好了。页面现在通过HTTPS加载,但我会推迟称它为“成功”一段时间。
答案 3 :(得分:0)
我有同样的问题。 HTTPS适用于iframe应用,但不适用于FBML应用。如果我使用https并请求FBML应用程序 - Facebook甚至不向CBURL(我的服务器)发送请求。在浏览器端,它只是说“收到空响应”。但是同样的FBML应用程序适用于HTTP。
我在我的服务器中使用GoDaddy证书,并且相同的证书用于iframe应用程序 - 它可以与iframe应用程序一起使用。