这两天在研究用VC来处理Asp.Net登录的问题。这个问题我问过豆腐,他推荐给我一篇很棒的
KB文章,这篇文章是讲如何用WinInet模拟POST请求的,一般来说,对于Asp页面,我们post的请求是:user=**&password=**&action=**,但是同样格式的请求用在Asp.Net页面上就不行了。我用
EffeTech Sniffer跟踪了半天,发现正常情况下,Post给Asp.Net页面的请求多了一个__VIEWSTATE=**,格式如下:__VIEWSTATE=**&user=**&password=**&action=**,如果我在程序中用相同的格式Post请求的话,就能够正常登录了。__VIEWSTATE后面的内容是经过编码的,我不知道它使用的是哪种编码方式(可以确定不是Base64编码),也不大明白用程序如何获得这个__VIEWSTATE。好像这个__VIEWSTATE是会根据Web Server的不同而有所不同的。不知道大家有没有这方面的经验呢?