在ASP中獲取POST過來的JSON數據需要使用Request對象的Body屬性。首先,需要將POST請求的Content-Type設置為"application/json",否則請求對象的Body屬性將為null。
// 設置請求頭Content-Type為application/json XmlHttpRequest request = new XmlHttpRequest(); request.open("POST", "http://example.com/api/"); request.setRequestHeader("Content-Type", "application/json"); // 將JSON數據作為POST請求的數據內容發送到服務器 var data = { "key1": "value1", "key2": "value2" }; request.send(JSON.stringify(data));
接下來,在服務器端使用Request對象的Body屬性獲取POST過來的JSON數據。
// 讀取POST請求體中的JSON字符串 string jsonData = null; using (StreamReader reader = new StreamReader(Request.InputStream, Request.ContentEncoding)) { jsonData = reader.ReadToEnd(); } // 解析JSON字符串為JSON對象 var jsonObject = JObject.Parse(jsonData); string value1 = jsonObject["key1"].ToString(); string value2 = jsonObject["key2"].ToString();
注意,在讀取請求體中的JSON字符串時,需要指定編碼方式,否則可能出現亂碼。