2010-03-16 131 views
2

我目前正在致力于联系进口商的网络应用程序(PHP),所以我将能够从Gmail,雅虎等用户的帐户中获取电子邮件地址,并将其用于我自己的恶意目的。开个玩笑,我的网络应用程序非常友好。谷歌联系人API - 无重定向

我以为我会从谷歌开始。我发现他们有一个非常棒的API,称为Google Contacts API,它可以让程序员像我一样访问用户的联系人。

经过几个小时的挣扎并将低劣的代码扔在一起后,我遇到了几块路障。我的主要问题是:

有什么办法,我可以有一个用户提供在我的网站他们的Gmail用户名和密码,并有我的代码检索联系人没有那个讨厌的重定向到谷歌登陆页面?这有点毁了我的网络应用程序的整个流程。

我看了一下AuthSub,并得到它的工作,但当然抓住的是,你必须重定向用户获取访问令牌。看起来OAuth也会有同样的结果。

我希望的一缕是ClientLogin身份验证方法。再次,有一个问题,谷歌有时会抛出一个CAPTCHA而不是auth令牌。再一次,用户流程被破坏了。

我注意到,我们的好朋友在Twitter上的朋友工作得很好。有谁知道他们是如何做到的?

谢谢!

+0

我刚刚解决三脚认证。这似乎是该行业正在发展的方式。 – 2010-03-30 15:26:25

回答

7

我想你已经确定了一个功能,而不是一个错误。 OAuth的重点在于防止用户将自己的密码输入到像您这样的第三方网站中:这样,他们可以学习如何在他们查看Google登录页时输入Google密码,而不必相信自己赢得了不存储他们的密码,并用它来阅读他们的所有电子邮件。

它确实会在您的Web应用程序的流程中提供一个小的中断,但OAuth通常会提供回调,因此它不应该是一个大的中断。作为交换,您的用户可以感觉更安全,您可以避免任何需要存储(然后处理)用户密码的问题。

总之,我认为你不能解决这个问题。的确,Twitter现在允许它(“基本身份验证”,其中用户名和密码直接发送),但该功能计划为deprecated by this summer