如何使用jQuery AJAX读取发布到经典ASP的数据

时间:2011-03-28 16:54:48

标签: jquery ajax asp-classic

我写了以下Javascript代码:

function sendCcbRequest(text) {
    var jsonToSend = "\"text\": \"" + escape(text) + "\"";
    $.ajax({
        type: "POST",
        url: 'x.asp',
        data: jsonToSend,
        success: function(response) {
            alert("success:" + response);
        },
        error: function() {
            alert("error");
        }
    }); // end ajax
}

如何阅读我从经典ASP代码发布的数据?

更新的 我已经为我的经典asp文件x.asp尝试了以下内容。

<%
Dim x
x = Request.Form("text")
Response.Write(x)
%>

它仍然没有打印。

4 个答案:

答案 0 :(得分:4)

使用此方法发布数据的方式(如问题中所述)并不真正在服务器端创建表单对象。因此,使用Request.BinaryRead读取发布的数据,然后使用给定here的方法之一将其转换为字符串。正如您已经注意到的,如果您使用查询字符串形式key1 = value1&amp; key2 = value2或形式为{key1:'value1',key2:'value2'}的地图发送数据,则发布的数据是有效的表单, ASP会将其转换为可以轻松读取的Request.Form。

答案 1 :(得分:3)

好的,我发现了一些有用的东西。以下代码行:

var jsonToSend = "\"text\": \"" + escape(text) + "\"";

需要更改为

var jsonToSend = { text: escape(text) };

答案 2 :(得分:0)

我会使用此处描述的解析器:Any good libraries for parsing JSON in Classic ASP?。这对我有用。

答案 3 :(得分:0)

x.asp页面中,只需使用:Request.Form("text")即可阅读您的Ajax请求发布的文字。