目标:将某网页的验证码图片,显示在程序的WebBrowser窗口。
问题:要获得验证码图片,需要有获取链接Url和referer(这两项都已知),WebBrowser1.Navigate Url没有问题,但是如何把referer也搞进去?

解决方案 »

  1.   

    webbrowser伪造Header头,直接在Navigate或Navigate2的第五个参数设置就行了。注意,要使这个参数有效,Navigate的第二个参数必须设定,可以设置为2
    object.Navigate2( _
        URL As Variant, _
        [Flags As Variant,] _
        [TargetFrameName As Variant,] _
        [PostData As Variant,] _
        [Headers As Variant])
    Headers
    Optional. A String that contains additional HTTP headers to send to the server. These headers are added to the default Microsoft Internet Explorer headers. For example, headers can specify the action required of the server, the type of data being passed to the server, or a status code. This parameter is ignored if the URL is not an HTTP URL. 
      

  2.   

    dim url as string ,referer as string
    url="http://www.dddd.net"
    referer="http://bbs.dddd.net"
    WebBrowser1.Navigate Url,flag=2,referer不成功啊,嗅探了一下,并没有出现想要的referer项。不知错在哪里?
      

  3.   


    修改后(Headers应该是第4还是第5个参数未测试,VB也比较少用):
    url="http://www.dddd.net"
    Headers="Referer: http://bbs.dddd.net"
    WebBrowser1.Navigate Url,2,0,Headers