是否可以拥有一个可以使用Facebook进行身份验证但不需要浏览器的客户端应用程序(我的意思是代码中没有嵌入式浏览器)?用户输入用户名/密码,仅允许使用客户端应用访问应用。
任何建议都会有很大的帮助。
谢谢, 塔拉辛格
编辑:我在Python中创建了需要浏览器交互的应用程序。现在我想摆脱它,只使用我的客户端应用程序。任何链接/教程??
再次感谢
答案 0 :(得分:13)
我知道这是一个古老的问题而且它得到了解答,但我想'马口GET'。来自Facebook:https://developers.facebook.com/docs/authentication/ ...
我们的OAuth 2.0实施没有 包括显式桌面应用支持。 但是,如果您的桌面应用程序可以嵌入 Web浏览器(大多数桌面框架 例如.NET,AIR和Cocoa支持 嵌入浏览器),你可以使用 客户端流程与一个 修改:特定的redirect_uri。 而不是要求桌面应用程序 托管一个Web服务器并填充 我们在Developer App中的站点URL 提供您可以使用的特定URL 使用桌面应用: 的 https://www.facebook.com/connect/login_success.html 强> ... [续]
答案 1 :(得分:8)
实际上答案绝对不是。
为了授权您的应用,用户必须在Facebook网站上输入他们的Facebook用户名和Facebook密码,您需要使用网络浏览器。没有办法跳过这一步(你不能问他们的用户名和密码是什么,然后自动交换访问令牌)。您可以阅读有关此here的更多信息。
答案 2 :(得分:1)
绝对是的,但是,在我们提出很多建议之前,我们需要知道您想要使用哪种编程语言。
例如,可以使用httpclient for java和python来封装所需的所有功能,其他人可以使用它们用于C,C ++,perl等的库。
[编辑]
搜索httpclient以及它如何与python一起使用。如果你在你的系统上运行wireshark,你将能够观看数据交换(如果你不完全理解http协议),然后在你的代码中实现它。
[/ edit]
答案 3 :(得分:1)
在这方面有一些很好的联系: http://developers.facebook.com/blog/post/289/
https://developers.google.com/identity-toolkit/ https://developers.google.com/accounts/docs/OpenID
http://facebooktoolkit.codeplex.com/ http://csharpsdk.org/
答案 4 :(得分:0)
显然现在你可以,如果你是他们最新功能的测试版测试人员:https://developers.facebook.com/docs/authentication/devices/让我想起了Wifi上的PIN码
答案 5 :(得分:0)
是和否,
我的服务器遇到了同样的问题。它只是控制台,所以我不得不提出解决方案。首先我使用lobo java webbrowser登录。我已将lobo的cookie转移到我的服务器上。