【发布时间】:2015-01-11 15:19:48
【问题描述】:
我正在尝试通过 ajax 将 JSON 数据发送到 HTTP 处理程序,但无法在 Handler 处检索 JSON 数据
这是我发送 json 数据的代码
函数 SendJsonData() {
var Jsonstring = "[{ AssetName: 'ANA001', AssetNumber: 'ANU001',SerialNumber:'S001',RFIDTag:'R001'},{ AssetName: 'ANA002', AssetNumber: 'ANU002',SerialNumber:'S002',RFIDTag:'R002'},{ AssetName: 'ANA003', AssetNumber: 'ANU003',SerialNumber:'S003',RFIDTag:'R003'}]";
var myJSON = JSON.stringify(Jsonstring);
$.ajax({
async: true,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
type: "POST",
data: myJSON ,
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "http://localhost:58275/NFCDataHandlerData.ashx",
// url: "http://166.78.189.76:93/NFCDataHandlerData.ashx",
success: function (response) {
alert(response.d);
}
});
}
这是我的句柄代码,我尝试过类似这些方法但没有获取 JSON 数据
public void ProcessRequest(HttpContext context)
{
//context.Response.ContentType = "application/json";
//var data = context.Request;
//var sr = new StreamReader(data.InputStream);
//var stream = sr.ReadToEnd();
// var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
//var jsonObject = serializer.DeserializeObject(stream);
//string objectdata = jsonObject.ToString();
//string Jsondata = string.Empty;
//if (HttpContext.Current.Request["Jsondata"] != null)
//{
// Jsondata = HttpContext.Current.Request["Jsondata"];
//}
string json1 = HttpContext.Current.Request.Form["json"];
string objectdata = string.Empty;
if (HttpContext.Current.Request["Jsonstring"] != null)
{
objectdata = HttpContext.Current.Request["Jsonstring"];
}
JavaScriptSerializer json = new JavaScriptSerializer();
List<NFCAssetData> myObjs = new List<NFCAssetData>();
myObjs = json.Deserialize<List<NFCAssetData>>(objectdata);
感谢您的帮助。
【问题讨论】:
标签: asp.net json asp.net-ajax httphandler