现在我要登陆的这个网址是ajax进行提交的。我用httpwatch查看不到post的数据。不知道是不是和ajax有关所以才看不到。现在我登陆httpwatch出来的url就是http://xxxxx/ajaxAdmin.do?method=logon....后面还有一堆参数。包括用户名密码什么的。在httpwatch post那一栏就查看不到post的数据,出来的这个Failed to open POST stream,登陆的网址是login.jsp。现在我也不知道有没有登录成功。但是查看登陆之后的页面是显示的错误页面。应该是没登陆进去。谁能告诉我该怎么做。一般的模拟登陆我是知道怎么做的。就是这个是ajax,之后还查看不到post数据。所以试了很久都不行

解决方案 »

  1.   

    或者怎么样才能知道curl模拟登陆是登陆成功的
      

  2.   

    既然 post里面空,那么就不是以post方式提交数据。
    那就是get。
    把参数放在url里面吧
      

  3.   

    用firebug看看有没有post数据。
    还有就是确认你传的参数正确吗??
      

  4.   

    你确定他ajax传递的信息都是已知的吗?是否有特殊的内容?
    你传递的参数都能和对方的ajax传递的一一对应吗?另外一般ajax等待,返回的内容多是json格式的数据,基本你可以通过分析json内容结果来获取是否登陆成功!
      

  5.   

    传递的ajax信息好像还用js处理过了。我传递的参数要写成处理之前的还是处理之后的?
      

  6.   

    我现在用模拟登陆得到的返回信息  和正常登陆状态下返回信息是一样的。并且如果两个同时登陆的话,提示的信息会说账号已经登录。这样表示是不是我已经登陆成功。可是我获取登陆之后的页面总是获取不到。总是出现错误提示页面说登录失效。我有设置cookie
      

  7.   

    我现在直接把ajax提交的地址和后面带的参数直接用curl抓取。之后页面上返回的内容是和正常登陆状态下返回的信息是一样的。cookie也有设置进去。可是抓取里面的页面的时候就说登陆已经失效。是不是在抓取登陆里面页面的时候cookie没获取到。还是cookie已经失效了。反正没运行一次页面都产生了一个cookie。cookie里面的信息是设置了一个sessionid。如果登陆没成功的话是不是不会产生cookie的值啊。很迷惑。