前台代碼:
$(function () {
var model = function (key) {
this.key = key;
}
var m = new model("abc");
$.ajax({
url: '/Demo.ashx',
type: 'POST',
data: JSON.stringify(m),
contentType: 'application/json; charset=utf8',
cache: false,
dataType: 'text',
success: function (data) {
alert(data);
},
error: function (xhr) {
alert("出現錯誤,請稍後再試:" + xhr.responseText);
}
});
});
Demo.ashx:
public class Demo : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World" + context.Request.Form["key"]);
}
public bool IsReusable
{
get
{
return false;
}
}
}
運行後彈出 "Hello World":
改為下面這樣就可以了:
$.ajax({
url: '/Demo.ashx',
type: 'POST',
//data: JSON.stringify(m),
//contentType: 'application/json; charset=utf8',
data:{key:"abc"},
cache: false,
dataType: 'text',
success: function (data) {
alert(data);
},
error: function (xhr) {
alert("出現錯誤,請稍後再試:" + xhr.responseText);
}
});
有人知道為什麼嗎?
ASP.NET Javascript Post JSON.stringifyartwl | 專家六級 | 園豆:11082
提問於:2012-04-05 22:20 < > 博問關注問題功能上線啦!
收藏 最佳答案
0
使用context.Request.InputStream去接看看,
data:{key:"abc"},這個只能做個demo,大的對象你怎麼寫,那不搞死。
收穫園豆:50回複 | 小AI | 菜鳥二級 |園豆:223 | 2012-04-05 22:22
我主要是想弄明白為什麼用 JSON.stringify格式化參數 取不到值
回複 | artwl | 園豆:11082 (專家六級) | 2012-04-05 22:23 |
用context.Request.InputStream 可以取到:
只是不明白為什麼用 context.Request.Form["key"] 取不到值
回複 | artwl | 園豆:11082 (專家六級) | 2012-04-05 22:27 |
@artwl: 你跟蹤一下JSON.stringify(m)的結果,看看和{key:"abc"}有什麼區別。去到之後你就隨便玩吧,還原序列化。
回複 | 小AI | 園豆:223 (菜鳥二級) | 2012-04-05 22:29 |
@artwl: 日,趕緊給分,強要了。。。
回複 | 小AI | 園豆:223 (菜鳥二級) | 2012-04-05 22:30 |
@小AI: 哈哈,行,給分
回複 | artwl | 園豆:11082 (專家六級) | 2012-04-05 22:33 |
正在載入編輯器...回答被採納可獲得懸賞園豆。 上傳圖片 編輯器載入中...富文本區
工具列
|
撤銷 (Ctrl Z) |
重做 (Ctrl Y) |
|
|
|
引用 |
|
粗體 (Ctrl B) |
斜體 (Ctrl I) |
底線 (Ctrl U) |
刪除線 |
|
|
|
|
靠左對齊 |
置中對齊 |
靠右對齊 |
減少縮排 |
增加縮排 |
清除格式 |
|
插入/編輯連結 |
清除連結 |
插入/編輯圖片 |
編輯 HTML 原始碼 |
切換全螢幕模式 |
插入代碼(推薦) |
|
|
|
|