ASP利用XMLHTTP实现表单提交以及cookies的发送的代码

来源:asp之家 时间:2011-04-15 10:37:00 

确实,如果在原网站如果存在表单提交或cookies的验证,对于ASP来说,不使用基于SOCKET的组件就难以完成,其实,XMLHTTP的另外两个方法被我们忽略了,而这正是问题的关键。

下面首先来说说这个方法

1。.send()
由于流行的小偷是使用的GET而不是POST来传送数据,所以很多人忽略了这个方法,而使用SEND发送数据也很简单,就是SEND("内容"),可是,

发送表单就不是这么简单,因为你发送的表单如果是中文的话,就要牵扯到编码的问题了。

首先,你在OPEN 时要确定是用POST 即 .open("POST",地址,是否异步) 。

然后,在SEND里面加上你表单的内容,比如说,你要提交的表单有3个表单域,分别是A,B,C,对应的值分别是1,2,3,那么,你在SEND里这样写就可以提交表单了,.send("A=1&B=2&C=3"),怎么样,很简单吧,是不是没想到呢?但是别高兴的太早了,我前面说到了,如果表单的值是中文的话,数据传输的就会出错了。这里我们借助一个函数escape(),熟悉JAVASCRIPT的朋友都应该知道这个函数的作用了,现在VBSCRIPT同样支持这个函数。.send("A=escape('值1')&B=escape('值2')&C=escape('值3')") 。

2。.setRequestHeader()
接着上面的所说,你的数据send出去了,对方却不会接收到,为什么了,其实,那是因为你的HTTP头少了一个东西,然后用这个函数把加上去就可以了,具体就是.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded"), 告诉对方你是提交了一个urlencode编码的表单。

好的,说完了表单的提交来说怎么传送cookies。

其实传送cookies也很简单了,同样利用这个函数在HTTP头里添加东西,比如,我当前在落伍的cookies是
cdb_sid=ybBiK0; cdb_cookietime=315360000; cdb_oldtopics=D869008D; cdb_visitedfid=1D45; cdb_auth=AQYHXVFDGERdsggVQA1VYUgxQDwFVV1dUAlwFAFRXVwU%2FbAIJB1lUCg; cdb_fid45=1113370145
现在我要发送这个cookies就直接是 .setRequestHeader("Cookie","cdb_sid=ybBiK0; cdb_cookietime=315360000; cdb_oldtopics=D869008D; cdb_visitedfid=1D45; cdb_auth=AQYHXVFDGERdsggVQA1VYUgxQDwFVV1dUAlwFAFRXVwU%2FbAIJB1lUCg; cdb_fid45=1113370145")
当然,有些网站页面有页面判断功能,这个也不难,就是.setRequestHeader("Referer","来路的绝对地址")

标签:ASP,XMLHTTP,表单提交,cookies发送
0
投稿

猜你喜欢

  • python3爬取淘宝信息代码分析

    2021-05-03 04:59:11
  • Python classmethod装饰器原理及用法解析

    2023-02-14 06:59:01
  • Vue 解决在element中使用$notify在提示信息中换行问题

    2024-04-28 10:53:35
  • ajax的缺点

    2007-11-08 12:51:00
  • js用typeof方法判断undefined类型

    2024-04-19 09:53:43
  • SQL Server恢复模型之批量日志恢复模式

    2024-01-28 07:34:22
  • python 从list中随机取值的方法

    2021-10-06 04:08:11
  • Python 12306抢火车票脚本

    2023-09-12 13:36:11
  • 用Python实现一个简单的线程池

    2023-09-21 15:14:56
  • Python实现用手机监控远程控制电脑的方法

    2021-06-22 07:57:49
  • Go gRPC环境安装教程示例详解

    2024-02-17 06:48:36
  • 详解MySQL 数据库范式

    2024-01-24 08:05:25
  • Python中Enum使用的几点注意事项

    2021-08-19 11:19:03
  • FrontPage2002简明教程二:文字与图像的处理

    2008-09-17 11:13:00
  • 如何解决AJAX中跨域访问出现'没有权限'的错误

    2008-09-11 17:20:00
  • python list与numpy数组效率对比

    2023-08-18 22:49:39
  • Oracle学习笔记(四)

    2024-01-28 20:00:57
  • Python input输入超时选择默认值自动跳过问题

    2023-02-22 07:22:40
  • Oracle常用dump命令,记录一下备查。

    2009-03-04 10:27:00
  • Python使用matplotlib绘制三维参数曲线操作示例

    2021-03-30 05:55:31
  • asp之家 网络编程 m.aspxhome.com