您可以讓我知道如何使用jQuery Ajax獲取存儲在同一服務器上的ZIP文件?請注意,我不想下載文件 我需要通過結果,如果成功?通過API片斷這樣的,(這是用一個表格,從客戶端傳遞一個zip文件到request
這裏是The Working Demo如何使用jQuery Ajax訪問服務器上的Zip文件 - 無需下載
request({
url: portalUrl + '/sharing/rest/content/features/generate',
content: myContent,
form: dom.byId('uploadForm'),
handleAs: 'json',
load: lang.hitch(this, function (response) {
if (response.error) {
errorHandler(response.error);
return;
}
var layerName = response.featureCollection.layers[0].layerDefinition.name;
addShapefileToMap(response.featureCollection);
}),
error: lang.hitch(this, errorHandler)
});
,但我需要通過從服務器上的zip文件不用其他使用形式和這裏我想這樣做
var data = "www.mydomain.com/GIS/App.ZIP";
request({
....,
form: data,
....
});
更新
由於menitoned API提供了FORMDATA選項以及但是怎麼我可以通過append方法裏面的第二個參數類型?
var theFile = "http://localhost/Portal/APP.ZIP";
var myFormData = new FormData();
myFormData.append(theFile, ?);
您可以將zip文件下載到ram中,然後將其發送到另一臺服務器。如果你需要解壓縮,你可以使用[zip.js](http://gildas-lormeau.github.io/zip.js/) – SpiderPig
感謝您的評論,但如何?此外,我不想將其解壓縮,我只想傳遞給請求的表單選項 –
它在[API文檔](https://developers.arcgis.com/javascript/3/jsapi/esri)中說過。 request-amd.html#esrirequest-request-form),你可以使用[FormData對象](https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects)。 – SpiderPig