一般来说是文本,这个可以设置:
responseText 是文本,
responseXML是XML
你这个直接用简单的文本就行了,接受的内容就是你在后台Response.write的内容
你的修改如下:
C# 我不熟,语法可能有错,但是思路绝对正确
----------------------------------------
JS:
url: "CheckName.aspx?userName="+userName //userName就是你要传入的用户名
后台:
protected void Page_Load(object sender, EventArgs e)
{
string userName=Request.querystring("userName")
GetUserName(userName)//服务器返回GetUserName中Response.write 的值
}
请参考
法1: 无需js,直接用a标签去接你的输出流 <a href="<你的返回流的Action路径>" >下载</a>方法2:使用js,前提是你使用的是现代浏览器,支持html5特性(主要是新的XMLHTTPRequest对象,Blob) <script type="text/javascript">function download(filename) { var oReq = new XMLHttpRequest()oReq.open("GET", "<你的返回流的Action路径>", true)oReq.responseType = "blob"oReq.onload = function (oEvent) { var content = oReq.response var elink = document.createElement('a')elink.download = filenameelink.style.display = 'none' var blob = new Blob([content])elink.href = URL.createObjectURL(blob) document.body.appendChild(elink)elink.click() document.body.removeChild(elink)}oReq.send()} </script>获取http请求报文头部信息
利用nodejs中的 http.ServerRequest中获取1):
request.method
用来标识请求类型
request.headers
其中我们关心两个字段:
content-type
包含了表单类型和边界字符串(下面会介绍)信息。
content-length
post数据的长度
关于content-type
get请求的headers中没有content-type这个字段
post 的 content-type 有两种
application/x-www-form-urlencoded
这种就是一般的文本表单用post传地数据,只要将得到的data用querystring解析下就可以了
multipart/form-data
文件表单的传输,也是本文介绍的重点
获取POST数据
前面已经说过,post数据的传输是可能分包的,因此必然是异步的。post数据的接受过程如下:
var postData = ''request.addListener("data", function(postDataChunk) { // 有新的数据包到达就执行
postData += postDataChunk
console.log("Received POST data chunk '"+
postDataChunk + "'.")
})
request.addListener("end", function() { // 数据传输完毕
console.log('post data finish receiving: ' + postData )
})
注意,对于非文件post数据,上面以字符串接收是没问题的,但其实 postDataChunk 是一个 buffer 类型数据,在遇到二进制时,这样的接受方式存在问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)