在PC的MSN中,我们登陆后,点击个人资料可以直接通过IE登陆到MSN的站点,而不需要再次登陆。现在需要在手机上实现相同的功能,用户在手机登录程序时,输入用户名,密码。点击网站按钮时,直接显示用户信息,请问这个是如何实现的。目前想法是点登陆时,使用curl访问https://mid.live.com/si/login.aspx,然后获取cookies,然后浏览器使用此cookies实现自动登录。但是这个站点时一个aspx页面,请问我应该如何提交我的用户名和密码?能否实现?

解决方案 »

  1.   

    我也发现此现象,而且地址后面没有参数,不像QQ。
    估计MSN后台把Cookie写到电脑了,访问网站时候自动会访问的。[align=center]*****************************
    * 本内容使用CSDN 小秘书回复 *
    每天回帖即可得10分可用分! *
    *****************************[/align]
      

  2.   

    这个已经解决了,curl请求前,设置下body,填写账号密码
    __EVENTTARGET=&__EVENTARGUMENT=&[email protected]&PasswordTextBox=XXXXXXX&SavePasswordCheckBox=0&PasswordSubmit=Sign+in__EVENTTARGET=&__EVENTARGUMENT=&[email protected]&PasswordTextBox=582044384&SavePasswordCheckBox=0&PasswordSubmit=Sign+in"
    请求后会返回一个页面,此页面时一个自动跳转的,获得跳转地址,用浏览器访问此地址。但是是不行的。 在看发现还返回了Set-Cookie: 我估计是缺少这些cookie,所以不能登陆。 
      

  3.   

    我现在尝试把cookie设置到浏览器中,从header中获得了set-cookie如下IdsAuth=PPAuth=AW3pqfvod*xepNTcb1mkMTN4i1a1gxzXjHn1KdsipQZ6WlhaZ3Rp7AhopKUsawrt42mOS8D2*fGfs7DnD55krrO9Ah1pNoXrBtX080mxhFQDWqUegTYRL6WOSPzSWUwy7S3JLiCzhqkxBk4ijZVjTn1clTMXJV!4COTUIYpSwVhHe0jMvq3c5waJiGi4ML6yUfTFOU1y!A2W3Bzqg1bIDWqOh!PuBvVTEIMW32FwIT3pTWsRfQ$$&MSPVis=258174&MSPAPPVis=; expires=Tue, 01-Jan-2030 08:00:00 GMT; path=/; secure,PPLState=1; domain=.live.com; expires=Tue, 01-Jan-2030 08:00:00 GMT; path=/,使用InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData);请问URL填写的是什么URL,cookieName是不是上面的PPLState,IdsAuth这些,而内容是=后面的部分嘛?那个secure要不要
      

  4.   

    已经解决了,以上的cookie获取时要包括后面的过期时间,path等,然后设置到IE就ok了