![](/img/trans.png)
[英]Is it possible to fake a multipart/form-data post with a jquery ajax call?
[英]Making an HTTP POST call with multipart/form-data using jQuery?
我正在嘗試使用jQuery使用multipart / form-data進行HTTP POST調用:
$.ajax({
url: 'http://localhost:8080/dcs/rest',
type: 'POST',
contentType:'multipart/form-data',
data: 'dcs.source=boss-web&query=data&dcs.algorithm=lingo&dcs.output.format=JSON&dcs.clusters.only=true',
//dataType: "jsonP",
success: function(jsonData) {alert('POST alert'); data=jsonData ; },
error : function(XMLHttpRequest, textStatus, errorThrown) {
console.log('An Ajax error was thrown.');
console.log(XMLHttpRequest);
console.log(textStatus);
console.log(errorThrown);
}
});
它不起作用。 Firebug返回未定義的錯誤,返回的XMLHttpRequst
對象multipart字段設置為false。
我可以做些什么來使用jQuery工作? 如果不可能有一個簡單的實現這個?
即idon't不需要傳輸文件,只需要一些數據。 但服務器需要multipart。
multipart/form-data
看起來不像這樣:
dcs.source=boss-web&query=data&dcs.algorithm=lingo&dcs.output.format=JSON&dcs.clusters.only=true
這是application/x-www-form-urlencoded
。
以下是multipart/form-data
請求的示例 。 和相關的RFC 1867 。
multipart/form-data
經常與上傳文件相關聯。 如果是這種情況,您可以查看jquery表單插件 ,它允許您ajaxify表單並支持文件上傳 。
這種方式有效:
$( "form#upload-form" )
.attr( "enctype", "multipart/form-data" )
.attr( "encoding", "multipart/form-data" );
$.ajax({
type: "POST",
contentType:attr( "enctype", "multipart/form-data" ),
url: "/adm/oferta_insert",
data: dados,
success: function( data ) {
alert( data );
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.