本帖最后由 niqusibahaoma 于 2015-01-28 13:29:02 编辑

解决方案 »

  1.   

    而且curl get到http://s.weibo.com/是显示登录状态的
    说明你使用的cookie的domain是weibo.com,而sina.com.cn的域肯定没提交cookie
    想办法抓到
      

  2.   


    我采用的是直接动态cookie文件方式curl_setopt ( $curl, CURLOPT_COOKIEJAR, $GLOBALS ['cookie_file'] ); // 存放Cookie信息的文件名称
    curl_setopt ( $curl, CURLOPT_COOKIEFILE, $GLOBALS ['cookie_file'] ); // 读取上面所储存的Cookie信息不可能sina.com.cn的域没提交cookie,而且我是根据http://mall.sina.com.cn/这个去登录抓包进行模拟的,结果反倒能登录微博不能登录商城
      

  3.   

    刚看了一下,刚打开商城首页时,上面是未登录状态,而后闪了一下,登陆上了,头像和昵称显示出来了
    很可能是ajax异步判断登陆的,这样做法有利于首页html静态化,而仍然可以显示登陆状态
    用浏览器的F12或者fiiddler找到ajax提交的接口吧
      

  4.   


    你的意思是说每次打开商城首页,它除了判断cookie之外,还需要提交一个ajax才能登录是吗?
      

  5.   

    首页估计压根就是个静态html,只有ajax偷偷提交的才是验证登陆的。
      

  6.   


    不是这个原因。我刚刚试着浏览器登录时勾选上“下次自动登录选项”,登录完关闭浏览器,然后再打开浏览器输入这个首页时还是要登录,也就是说cookie是临时的。不知道该怎么解决。
      

  7.   

    那是因为cookie被你的浏览器清了,而且这个问题跟静态html也没什么关系
    你自己F12找找哪个链接是偷偷登陆的吧,这一点我肯定