2011-04-13 16 views
8

¿Hay alguna forma de cambiar la contraseña de gmail programáticamente usando java?¿Hay alguna forma de cambiar la contraseña de gmail mediante programación mediante Java?

+1

No es si usted está utilizando Google Apps - hay un aprovisionamiento API, pero necesitarás ser un poco más específico. – Simon

+1

No estoy seguro de que siga siendo así, pero vea http://stackoverflow.com/questions/3891345/how-to-change-gmails-password-programmatically –

+0

He combinado sus dos cuentas. [Lea esta entrada de Faq sobre cuentas basadas en cookies.] (Http://meta.stackexchange.com/questions/44557/why-should-i-register-my-account/44562#44562) Además, StackOverflow no es un foro; si tiene una nueva pregunta, por favor haga una nueva pregunta. Si desea incluir más información en su pregunta, por favor [edítela](). Si desea interactuar con una de las personas que han respondido, puede dejarles un comentario. – Will

Respuesta

0

creo que sí. Puede registrar toda la operación con páginas web por Selenium, probar si todo está correcto y luego exportar a código Java - solo puede surgir un problema si Google usa CAPCHA

0

Uh, solo use un cliente http para publicar esta página web: https://www.google.com/accounts/b/0/EditPasswd . Use http://hc.apache.org/httpclient-3.x/ o algo similar. Tendrá que hacer un seguimiento de las cookies de manera adecuada, por lo que Google piensa que está conectado cuando carga la página. Pero sí, obviamente es posible. Si su navegador puede hacerlo, puede hacerlo mediante programación mediante el envío de solicitudes http. Si desea tener doble cuidado, puede usar algo como tamperdata en Firefox para olfatear exactamente lo que envía su navegador cuando solicita un cambio de contraseña, para que no se pierda ningún campo silencioso o lo que sea.

+0

¿esa url siempre permanece igual? ¿o es dinámico? si es estático, ¿cómo podría obtener EditPassword pragmáticamente? – vs4vijay

+0

No se garantiza que siga siendo el mismo, pero no hay razón para pensar que lo hará si no lo ha hecho en casi dos años. Busque clientes http como apache httpclient como mencioné en mi publicación si desea acceder a él programáticamente –

2

La API de Provisioning de Google guide tiene el método updateUser que toma un objeto UserEntry. Puede usarlo para actualizar la contraseña, supongo, tendrá que probarla. Compruebe el javadocs para la definición de UserEntry

0

Usando Google Provisioning API, para cambiar la contraseña, hay que configurarlo para que login atributo de UserEntry objeto:

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