我通过 AJAX 和 ASP.Net Web 服务发布文件数据(图像文件)。我需要得到这样的 JSON 响应:({"d":"null"})
,但我得到的是 XML 响应,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">null</string>
在发送响应之前,我正在使用JavaScriptSerializer
WebService 将响应转换为 JSON,但它没有转换。
return js.Serialize(result);
我还在 Web Method 的顶部添加了以下代码。
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
以下是使用 AJAX 发送文件数据的代码
if (bannerImage) {
//var file = document.getElementById('bannerImage').files[0];
var file = this.files[0];
var formData = new FormData();
formData.append(file.name, file);
$.ajax({
type: "POST",
data: formData,
url: url,
processData: false, // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
dataType: "JSON",
success: onUpdateUserPhotoSuccess
});
}