我通过AJAX和ASP.Net网络服务发布文件数据(图像文件)。我需要得到像这样的JSON响应:({"d":"null"})
,但我得到XML响应,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">null</string>
我在发送响应之前使用WebService中的JavaScriptSerializer
将响应转换为JSON,但它没有转换。
return js.Serialize(result);
我还在Web方法的顶部添加了以下代码。
[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
});
}