如何检测用户在iframe或直接网址中打开我的Facebook应用程序

wow*_*wow 4 javascript php jquery redirect facebook

让我们说我的Facebook应用程序网址http://fb.domain.com/和应用程序网址是http://apps.facebook.com/demoapp/

现在我希望用户无法直接打开应用程序URL,必须在Facebook上的iframe中.

http://apps.facebook.com/demoapp/如果用户直接打开链接,如何检测和重定向链接?

让我知道关键.

Phi*_*her 11

如果您只是想检测用户是否在iframe中打开了您的网址,请启用javascript,您可以执行以下操作:

if (window!=window.top) { /* I'm in a frame! */ }
Run Code Online (Sandbox Code Playgroud)

希望这能回答你的问题.


Mik*_*ola 8

检查if (window!=window.top)仅告诉您是否在iframe中打开了应用程序.但它不会告诉它是否是FaceBook iframe.在FaceBook iframe中打开应用程序时(例如http://apps.facebook.com/demoapp/)FaceBook发送signed_request参数.如果此参数有效,您可以安全地假设请求来自FaceBook iframe.如果没有重定向到正确的应用程序页面:

<script type="text/javascript">
    top.location.href = "http://apps.facebook.com/demoapp/";
</script>
Run Code Online (Sandbox Code Playgroud)