0

我正在尝试开发一个小书签,它可以抓取用户当前的网页并存储从中提取的一些数据。在我自己的网站上,我的用户通过 Facebook API 登录。

使用书签时,我可以成功呈现 Facebook 登录模式,但在登录 API 时会引发异常:

指定的 URL 不属于应用程序。

我是新手,但大概这是因为访问小书签的当前页面与我自己的域不匹配?

我正在从托管在该域上的外部文件中运行 javascript -这还不够吗?

或者,我该如何解决这个问题?不幸的是,我无法提供自己的帐户管理功能,我依靠 Facebook 进行用户管理。

任何解释和创造性的想法表示赞赏。

4

1 回答 1

0

解决方案是在当前页面的 iframe 或新选项卡或新弹出窗口中在您自己的域中托管登录步骤。无论如何,任何更少的东西都太不安全了。

可能的步骤:

  1. Bookmarklet 运行并抓取数据。
  2. Bookmarklet 使用 src="http://yourdomain.com/bookmarklet-widget?data=...." 创建 iframe
  3. 如果尚未登录,则小部件内容页面首先需要登录步骤。

如果数据太大而无法使用 GET 提交,则可以使用 POST。步骤就像

  1. Bookmarklet 运行并抓取数据。
  2. Bookmarklet 创建名称为“mywidgetframe”的空 iframe。
  3. Bookmarklet 使用 method=post target=mywidgetframe 和 action="http://yourdomain.com/bookmarklet-widget" 创建表单
  4. Bookmarklet 提交表单。
  5. 如果尚未登录,则小部件内容页面首先需要登录步骤。

如果您需要 iframe/window 和当前父页面之间的直接通信,请查看http://enable-cors.org/

于 2013-03-06T05:37:27.690 回答