高分求ASP获取别站验证码的问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 06:40:12
我想在自己的站点加一个登陆到其他站点的登陆接口,用户可以通过我的页面登陆到其他站点,但是有些站点有验证码,我调用了他那个生成验证码的php文件,可以正常显示在我的网页上,以下是代码,但是提交后却不成功~
<%
function getHTTPPages(url)
dim Http
set Http=server.createobject("MSXML2.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPages=BytesToBstrs(Http.responseBody,"UTF-8")
set http=nothing
if err.number<>0 then err.Clear
end function

Function BytesToBstrs(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstrs = objstream.ReadText
objstream.Close
set objstream = nothing
End Function

Functi

一般的来说,验证码是服务器端产生,(asp)存放在session中,然后比较客户端提交的 字符串,
现在你的问题就是,session是不是同一个会话,使用服务器端的xmlhttp,会产生一个新的会话,导致两次会话不一样。
你是第一次使用一次服务器端的xmlhttp.那么这个验证码当然存放在这个会话的sesion中,
你第二次登陆的时候,有建立一次新的会话,而两次会话的 session.id 不一样,导致会话中验证码不一样,所以无法登陆.解决办法 我想想:
解决办法:(个人想法,没有环境实现)
你知道人家的生成验证码的地址,又知道要提交的地址,何必使用,xmlhttp?
访问,生成的验证码,表单提交到,你要提交的页面(不知道这样,可不可以,你可以试试)

给你片文章,你会明白你第修改cookies后问什么能登陆

http://hack.77169.com/HTML/20080711110650.html

不是获取不到cookies,可能是缓存问题
我在想你在搞黑客是不是,恶意修改客户端的cookies,有前途,不过,我测试过这样的一个程序,使用xmlhttp访问以下几句话的文件
response.Cookies("test4")="test4"
response.write request.Cookies(("test4"))
response.End()
每次访问过后我都修改cookies的name和值,结果发现,能设置,也同时能获取
你也可以测试一下,每次修改值,看看能不能获取,

验证码本来还就是防止外部提交和注册机的

想有验证码进入有点难的,没有的话就好进的

两个不同网站的可以共用同一个session吗?~~~~ 不可能啊~~~

关注!