【问题标题】:Facebook app server side authentication (Java server with JavaScript client)Facebook 应用服务器端身份验证(带有 JavaScript 客户端的 Java 服务器)
【发布时间】:2012-08-28 18:48:38
【问题描述】:

我正在开发一个将在 FB Canvas 中运行的 Facebook 应用程序。我的服务器是 Java 服务器,我在客户端使用 JavaScript。

Facebook 要求在应用程序加载时请求 (POST) 的 URL。此 URL 不应是动态 URL(以“/”结尾或包含“?”)。所以我写了一个带有 URL:http://localhost:8080/myApp 的 servlet,它将解析 signed_request 参数。现在我被困在如何将标记返回给客户端,然后对 FB API 执行客户端请求。有没有比这个 servlet 返回标记更优雅的方法? 请注意,由于 servlet 从 iframe 运行,因此我无法重定向(使用 302)。

谢谢!

【问题讨论】:

    标签: facebook facebook-graph-api facebook-javascript-sdk


    【解决方案1】:

    还有比这个 servlet 返回标记更优雅的方式吗?

    在哪些方面更“优雅”?

    您的 servlet 在这里充当 Web 服务器,Web 服务器通常通过返回“标记”(HTML、CSS、JS 等)来响应 HTTP 请求——在什么时候以及如何让您的应用程序“更优雅”比那个?

    请注意,由于 servlet 从 iframe 运行,因此我无法重定向(使用 302)。

    您是指 Facebook 画布 iframe,还是其中的另一个 iframe?

    你想重定向到哪里以及为什么?

    【讨论】:

    • 1.有比 REST API (servlet) 更优雅的方式来响应整个 HTML 文件。例如,JSP。我想要的只是解析来自 FB 的请求,检查用户 ID,并根据用户 ID 返回标记。 2.我指的是FB canvas iframe。如果我可以重定向,我会重定向到 HTML,而不是在 servlet 响应中返回它。我希望正确解释它。谢谢。
    • 更清楚一点 - 我的目标是在加载画布之前获取用户 ID。
    • 您会在“加载”画布的“同时”得到它,因为signed_request 参数是在最初将其加载到 iframe 时传递给您的应用程序的。
    猜你喜欢
    • 2012-08-28
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 2011-11-04
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    相关资源
    最近更新 更多