これが私がやろうとしていることです(失敗しました、私は追加するかもしれません)そしてあなたが私に与えることができるどんな方向でもいただければ幸いです
HTML5サイトから、IIS7.5でホストされているクロスドメインWCFサービスにファイルをアップロードしたいと思います。
ファイルのアップロードに加えて、サーバーのアップロード機能に追加のパラメーターを送信する必要があります
これは可能ですか?
これが私のoperationContractの外観です:
[OperationContract]
[WebInvoke( Method = "POST",
UriTemplate = "/uploadmodeldata/?id={Id}&customerdatatype={customerdatatype}&data={data}")]
void UploadModelData(string Id, string customerdataType, byte[] data);
これが私のjqueryajaxリクエストです
function FileVisits() {
var uid = checkCookie1();
userid = uid.toString().replace(/"/g, '');
var fileData = JSON.stringify({
Id:userid ,customerdatatype:scanupload,
data: $('#fileBinary').val()
});
alert(fileData);
"use strict";
var wcfServiceUrl = "http://xxxxx:1337/Service1.svc/XMLService/";
$.ajax({
cache: false,
url: wcfServiceUrl + "uploadmodeldata/",
data: fileData,
type: "POST",
processData: false,
contentType: "application/json",
timeout: 10000,
dataType: "json",
headers: {
'User-agent': 'Mozilla/5.0 (compatible) Greasemonkey',
'Accept': 'application/atom+xml,application/xml,text/xml',
},
beforeSend: function (xhr) {
$.mobile.showPageLoadingMsg();
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
},
complete: function () {
$.mobile.hidePageLoadingMsg();
},
success: function (data) {
var result = data;
},
error: function (data) {
alert("Error");
}
});
}
ファイルサイズが100kb未満の場合、このエラーが発生しました
方法は許可されていません
ただし、ファイルが100 kbより大きい場合、このエラーが発生しました
413エンティティを大規模にリクエスト
jqueryajaxからクロスドメインwcfにファイルをアップロードするにはどうすればよいですか。ありがとう