我已经创建了一个WCF服务并上传到服务器并运行正常。问题是当我尝试通过ajax请求访问它时。
[WebInvoke(Method = "GET",
BodyStyle = WebMessageBodyStyle.Bare,
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
[OperationContract]
void UploadPic(string imageData);
public void UploadPic(string imageData)
{
try {
string Pic_Path = HttpContext.Current.Server.MapPath("MyPicture.png");
using (FileStream fs = new FileStream(Pic_Path, FileMode.Create))
{
using (BinaryWriter bw = new BinaryWriter(fs))
{
byte[] data = Convert.FromBase64String(imageData);
bw.Write(data);
bw.Close();
return;
}
}
}
catch (Exception ex)
{
return;
}
}
ajax请求是从另一个域完成的,因此我使用jsonp,因此请求不会被CORS问题阻止。 但我收到此特定错误错误:jQuery110107099825242048435_1423163196150未被调用。我的ajax电话是这样的:
$.ajax({
type: 'GET',
url: 'https://g9w2493g.houston.hp.com/marketing/David/Service1.svc/UploadPic',
data: {imageData: dataURL},//'{ "imageData" : "' + dataURL + '" }',
contentType: 'application/json; charset=utf-8',
jsonp: 'jsonp',
dataType: 'jsonp',
success: function (jsonData) {
var data = JSON.parse(jsonData);
},
error: function (request, textStatus, errorThrown) {
console.log(request.responseText);
console.log(textStatus);
console.log(errorThrown);
}
});
我希望有人可以帮我解决这个问题,或者有人遇到过同样的错误。感谢您的帮助。