asp页面如何接收ajax传过来的json数据

function saveAdd() {
var dialogCreate = $('#dialogCreate');
var name = $('#Name', dialogCreate).val();
$.ajax({
url: 'cs.asp',
type: 'post',
data: JSON.stringify({
ddName: name,
ddage:age,
……
}),
contentType: "application/json",
success: function (zcname) {
//提交成功的提示词或者其他反馈代码
var result=document.getElementById("alterBoard");
result.innerHTML="成功!";
},
error : function(zcname) {
//提交失败的提示词或者其他反馈代码
var result=document.getElementById("alterBoard");
result.innerHTML="失败!";
}
});
};
后台asp处理页面怎么获取ddName和ddage的值呢?用request、request.QueryString都获取不到它们的值。我要把它们的值获取到传到数据库里。

ajax语句之前alert(name)是有值输出的,ajax后cs.asp中request(“ddName”)始终获取不到值,这是怎么回事呢?

第1个回答  2018-09-19
bytecount = Request.TotalBytes
bytes = Request.BinaryRead(bytecount)
Set stream = Server.CreateObject("ADODB.Stream")
stream.Type = 1 'adTypeBinary
stream.Open()
stream.Write(bytes)
stream.Position = 0
stream.Type = 2 'adTypeText
stream.Charset = "utf-8"
s = stream.ReadText() 'here is your json as a string
stream.Close()
Set stream = nothing
Response.write(s)
得到的s就是json格式的字符串,就象{"userid":"apple","password":"test123456"}
然后再利用其它工具可以将json字符串中的相关信息提取出来。这个网上有很多示例。
第2个回答  2018-09-03
JS的值是无法直接用ASP获取,JS是属于客户端语言,ASP是服务器端无法直接调用的。本回答被网友采纳