拒绝显示文档,因为X-Frame-Options禁止显示
Refused to display document because display forbidden by X-Frame-Options
我正在构建一个Facebook应用程序,我注意到当我试图使用他们的Javascript API获取用户的登录状态时,有时会出现错误:
"拒绝显示文档,因为X-Frame-Options禁止显示。"
当我使用Facebook作为页面而不是我的用户帐户时,每次点击应用程序的"检查登录状态"页面时,我都能重现这一点。这很容易避免,因为我知道这会导致问题,但显然我的用户可能不知道这一点。
有没有办法确定用户是否将Facebook用作页面?因为这似乎几乎毁了我的整个应用程序。
我也遇到了这个问题,用以下方法解决了它:该应用程序正在将用户重定向到Facebook的登录屏幕(验证对话框),而用户已经登录。因此,我更改了代码,如果登录,则重定向到成功页面,如果未登录,则跳转到对话框。
当facebook从web浏览器重定向到你的应用程序,然后你重定向到facebook授权登录时,这是一个问题。你必须确保表单替换了页面,并且不会加载到facebook画布中,因为它不喜欢它。
所以你必须像这样做一个干净的重定向-这是节点示例
res.send("<script> top.location.href='"+ "https://www.facebook.com/dialog/oauth?
client_id=*********&redirect_uri=http://apps.facebook.com/myapp" + "'</script>");
看看这个facebook开发页面和它在步骤3
https://developers.facebook.com/docs/howtos/login/server-side-login/
移动应用程序似乎不是问题,只是桌面
这个javascript工作吗?
document.write(isFacebookPage()?"YES, I'm in a Facebook Page!":"No, not a Facebook Page");
function isFacebookPage(){
return (document.location.href.indexOf('/pages/')>0);
}
相关文章:
- X-Frame-Options SAMEORIGIN在我的域上阻止iframe
- 拒绝在框架中显示,因为它设置了'X-Frame-Options'到'拒绝'在JavaSc
- javascript中的Catch X-Frame-Options错误
- Google Plus图标未显示-“X-Frame-Options禁止显示”
- 如何使用X-Frame-Options SAMEORIGIN对来自同一域的页面进行iframe
- 错误响应上的X-Frame-Options标头
- Google OAuth gapi.auth.authorize X-Frame-Options: SAMEORIGIN
- 如何删除 X-Frame-Options 响应标头,允许应用程序被 iframe
- X-Frame-Options阻止Ajax响应在iframe中显示
- 要停止ClickJacking,哪一个更安全?突破iframe与X-Frame-Options拒绝或同源
- Iframe Alt Text当X-Frame-Options:SAMEORIGIN|DENY的Iframe加载错误时
- 拒绝显示,请将X-Frame-Options设置为SAMEORIGIN
- 拒绝显示文档,因为X-Frame-Options禁止显示
- 谷歌在框架中的视图,因为它将“X-Frame-Options”设置为“SAMEORIGIN”
- 拒绝显示'在帧中,因为它设置了'X-Frame-Options'到'否认'.在通
- 检测方式“;拒绝显示文档,因为X-Frame-Options禁止显示"错误
- 在使用angularjs渲染谷歌共享时,X-Frame-Options拒绝加载
- Google Drive文件上传使用JavaScript API抛出X-Frame-Options错误
- 拒绝在框架中显示,因为它设置了'X-Frame-Options'拒绝facebook.UI共享方法
- 是否可以在设置'X-Frame-Options'到'同源'使用用户脚本