我设置了一个简单的Servlet,用于使用C2DM与我的Android应用程序进行交互。
在Servlet中,我只需登录https://www.google.com/accounts/ClientLogin并在正文中发送这些参数即可登录Google帐户:
电子邮件,密码,帐户类型,来源和服务(设置为ac2dm)。
我得到了Auth,SID和LSID的响应。
现在我的Servlet正在被修改和部署,每当我从手机发送设备注册ID时,我再次登录Google帐户。我想知道在再次登录之前是否必须注销,或者是否需要再次执行登录。
我一直在寻找一些退出网址,我刚刚找到https://www.google.com/accounts/Logout,但我不知道我必须发送什么参数。
所以我的问题是,我的登录是一个好方法吗?我必须重新登录吗?如果是的话,我想我必须先退出,那么服务器期望的参数是什么?
任何评论都会受到赞赏; - )
答案 0 :(得分:0)
您无需退出。当您在登录时执行登录时,通常会获得不同的Auth,SID和LSID。旧的Auth,SID,LSID和新的Auth,SID,LSID都是有效的,仍然可以使用。授权将在一段时间(天)后过期,然后您必须重新登录课程。
目前我正在寻找一种强制注销的方法,以便阻止之前检索的所有授权码。
您可以使用CURL自行验证:
curl https://www.google.com/accounts/ClientLogin -d "Email=YourAccount" -d "Passwd=YourPassword" -d "accountType=GOOGLE" -d "source=Google-cURL-Example" -d "service=ac2dm"
curl --header "Authorization: GoogleLogin auth=YourAuth" "https://android.apis.google.com/c2dm/send" -d registration_id=YourPhoneRegistrationID -d "data.payload=YourMessage" -d collapse_key=0
成功时,curl将返回消息ID(id = ...),否则会返回错误。