2011-04-13 56 views
8

有没有办法使用java以编程方式更改gmail密码?有没有办法使用java以编程方式更改gmail密码?

+1

还有,如果你正在使用谷歌企业应用套件 - 有一个配置API,但你需要更具体一些。 – Simon 2011-04-13 08:20:26

+1

不知道它是否仍然如此,但请参阅http://stackoverflow.com/questions/3891345/how-to-change-gmails-password-programmatically – 2011-04-13 08:29:57

+0

我已将您的两个帐户合并在一起。 [请阅读有关基于Cookie的帐户的此Faq条目。](http://meta.stackexchange.com/questions/44557/why-should-i-register-my-account/44562#44562)此外,StackOverflow不是一个论坛;如果您有新问题,请提出一个新问题。如果你想在你的问题中包含更多信息,请[编辑它]()。如果您想与其中一位已回答的人进行互动,您可以留下评论。 – Will 2011-04-13 18:38:49

回答

0

我想是的。您可以通过Selenium记录所有网页操作,测试是否全部正常,并在导出为java代码后 - 如果Google将使用CAPCHA,则会出现问题

0

呃,只需使用http客户端发布此网页:https://www.google.com/accounts/b/0/EditPasswd 。使用http://hc.apache.org/httpclient-3.x/或类似的东西。您需要正确地跟踪cookie,因此谷歌认为您在加载页面时已登录。但是,显然这是可能的。如果你的浏览器可以做到这一点,你可以通过发送http请求来编程。如果你想加倍小心,你可以在Firefox中使用类似tamperdata的东西来嗅探你的浏览器在你请求更改密码时发送的内容,所以你不会错过任何无声字段或什么。

+0

是那个url总是保持不变?或者它是动态的? 如果它是静态的,那么我怎么能得到EditPassword务实? – vs4vijay 2013-01-02 07:03:25

+0

不保证保持不变,但如果近两年内没有这样做,没有理由认为它会。如我在文章中提到的那样查找http客户端,如apache httpclient,如果您想要以程序访问它 – 2013-02-20 08:57:27

2

谷歌配置API guide有updateUser方法,它采用UserEntry对象。你可以用它来更新我想的密码,你将不得不尝试一下。检查javadocs为UserEntry的定义

0

使用Google Provisioning API,更改密码,你必须将其设置为UserEntry对象的login属性:

import sample.appsforyourdomain.AppsForYourDomainClient; 
... 
AppsForYourDomainClient client = new AppsForYourDomainClient(email, password, domain); 
UserEntry user = client.retrieveUser("username"); 
user.getLogin().setPassword("newpassword"); 
client.updateUser("username", user); 
相关问题