在自己写的一个自动发帖的小程序中,遇到个问题:网站发帖时,提交参数中有个变量是通过Ajax赋值的,而且是在提交的时候赋值的,这个变量每次取出来的值都不一样,也就是像验证码那样,是用来判断唯一性的,但是在验证的时候,肯定提交的值要和判断匹配的值一样,可是通过HttpWebRequest实现的程序,怎么才能把它取出来,并且和数据同步提交上去?(那个参数是拼接在提交的Url后面的,即:"href=xxx.asp?xabc="+key),就是在提交的时候取出key的值,并提交数据上去。

解决方案 »

  1.   

    用WebBrowser,可以。
    18、C#获取WebBrowser脚本中的变量值 
    /​/项​目​中​添​加​M​i​c​r​s​o​f​t​.​m​s​h​t​m​l​引​用
    -​-c​:​\​t​e​m​p​\​t​e​m​p​.​h​t​m-​-
    <h​t​m​l>
    <s​c​r​i​p​t​ ​l​a​n​g​u​a​g​e="J​a​v​a​S​c​r​i​p​t">
    v​a​r ​T​e​m​p​ = "Z​s​w​a​n​g​ ​路​过​ ​:​)";​
    <​/s​c​r​i​p​t>
    <​/h​t​m​l>

    u​s​i​n​g ​m​s​h​t​m​l​;​
    p​r​i​v​a​t​e v​o​i​d ​F​o​r​m​1​_​L​o​a​d​(o​b​j​e​c​t ​s​e​n​d​e​r​,​ ​E​v​e​n​t​A​r​g​s​ ​e​)​
    {​
    ​ ​ ​ ​w​e​b​B​r​o​w​s​e​r​1​.​N​a​v​i​g​a​t​e​(@​"c​:​\​t​e​m​p​\​t​e​m​p​.​h​t​m")​;​
    }​
    p​r​i​v​a​t​e v​o​i​d ​b​u​t​t​o​n​1​_​C​l​i​c​k​(o​b​j​e​c​t ​s​e​n​d​e​r​,​ ​E​v​e​n​t​A​r​g​s​ ​e​)​
    {​
    ​ ​ ​ ​I​H​T​M​L​D​o​c​u​m​e​n​t​2​ ​v​D​o​c​u​m​e​n​t​ = ​w​e​b​B​r​o​w​s​e​r​1​.​D​o​c​u​m​e​n​t​.​D​o​m​D​o​c​u​m​e​n​t​ a​s ​I​H​T​M​L​D​o​c​u​m​e​n​t​2​;​
    ​ ​ ​ ​I​H​T​M​L​W​i​n​d​o​w​2​ ​v​W​i​n​d​o​w​ = ​v​D​o​c​u​m​e​n​t​.​p​a​r​e​n​t​W​i​n​d​o​w​;​
    ​ ​ ​ ​v​W​i​n​d​o​w​.​e​x​e​c​S​c​r​i​p​t​("d​o​c​u​m​e​n​t​.​t​i​t​l​e​=​T​e​m​p​;",​ "J​a​v​a​S​c​r​i​p​t")​;​
    ​ ​ ​ ​T​e​x​t​ = ​v​D​o​c​u​m​e​n​t​.​t​i​t​l​e​;​
    }
      

  2.   

    WebBrowser确实方便很多,就是想知道HttpWebRequest怎么实现。
      

  3.   

    还有想问下,XMLHTTP和Ajax中的HTTPXMLRequest有关系没?
      

  4.   

    写错了,还有想问下,XMLHTTP和Ajax中的XMLHTTPRequest有关系没?