Java 用于Facebook身份验证的跨操作系统简单web浏览器

Java 用于Facebook身份验证的跨操作系统简单web浏览器,java,facebook,authentication,browser,Java,Facebook,Authentication,Browser,我目前正在尝试允许用户在我的Java应用程序中使用他们的Facebook帐户登录。然而,这需要一个浏览器来显示Facebook认证网页 我现在正在寻找一个“浏览器”项目,该项目: 是跨操作系统的 支持单帧(即在该url处显示页面,无前进/后退/刷新按钮) 支持相对较新的web标准(Facebook使用) 最好轻便 我正试图避免EclipseSWT,因为要让跨操作系统工作,它需要很多麻烦。这是一个相对较小的项目,我想保持简单。基于swing的浏览器也不是替代品,因为它不支持更新的web标准 是

我目前正在尝试允许用户在我的Java应用程序中使用他们的Facebook帐户登录。然而,这需要一个浏览器来显示Facebook认证网页

我现在正在寻找一个“浏览器”项目,该项目:

  • 是跨操作系统的
  • 支持单帧(即在该url处显示页面,无前进/后退/刷新按钮)
  • 支持相对较新的web标准(Facebook使用)
  • 最好轻便
我正试图避免EclipseSWT,因为要让跨操作系统工作,它需要很多麻烦。这是一个相对较小的项目,我想保持简单。基于swing的浏览器也不是替代品,因为它不支持更新的web标准


是否有任何项目符合我的要求?在没有浏览器的情况下,有没有其他方法可以做到这一点?

您是否尝试过以下任何控件:

  • (已付)
  • (已付)
我以前成功地使用过。您要做的是将NavigationAdapter添加到BrowserPanel,然后检查NavigationEvent url是否设置为

https://www.facebook.com/connect/login_success.html#access_token=USER_ACCESS_TOKEN
成功的授权


有关最后一部分的更多信息,请查看相应的。

您可以尝试javaFX2.0,如果您使用的是jdk1.7,它可以在Windows、Linux和Mac上运行。 您可以在swing面板中嵌入浏览器,并显示/隐藏后退/刷新/前进/地址栏

我建议您使用OAuth API,看看用户的登录是否成功,而不是创建自己的方式。 如果您的应用程序只存储用户的基本信息,您可以在OAuth的帮助下获取这些信息。
在这种情况下,您不必担心如何处理用户密码。

Mozilla曾经有一个叫做“Prism”的东西,用于基于浏览器的独立应用程序。虽然现在已经停止了,但这些项目页面列出了两个备选方案,可能值得一看:@CBroe感谢您的回复!Chromeless和WebRunner似乎都无法下载。对不起,我没有再看下去了——它们现在似乎也已经停产了。在“kiosk”模式下启动的“普通”浏览器可能会解决您的问题吗?@CBroe绝对会!只要我对浏览器有编程访问权限(最好是url更改时触发的位置侦听器事件),并且浏览器本身支持Facebook的基本功能;那太完美了。最好只包含页面本身;没有地址栏/后退按钮;不过,这不是必需的。@CBroe您知道这样一个项目吗?谢谢您的回复!WebView似乎没有提供任何功能来订阅位置/url更改?除此之外,它是完美的。SWT将是完美的,如果不是因为它增加了相当多的麻烦,让它跨操作系统工作。Lobo浏览器似乎已经过时了,根本不支持Java7。他们的组件是我没有提到的一个组件,因为它不是免费的。但它似乎能满足你的所有需求,并有30天的试用期,看看它是否真的能满足你的需求。我决定使用JavaFX;稍后我会更新你的答案,分享我是如何做到的。再次感谢!