How to solve this no multipart boundary was found while trying to send attachment via rest call ?

abhinay006 April 11, 2017

I am getting following error while sending attachment to created issue on JIRA. 


<message>org.apache.commons.fileupload.FileUploadException: the request was rejected because no multipart boundary was found</message><stack-trace>java.lang.RuntimeException: org.apache.commons.fileupload.FileUploadException: the request was rejected because no multipart boundary was found

I am making an ajax call to send this attachment as multipart-data. 

var blob = canvasImageDataUrl
var fd = new FormData();
fd.append("file", blob,"ss_"+issueKeyid+".png");

$.ajax({
url: "https://"+jiraUrl+"/rest/api/2/issue/"+issueKeyid+"/attachments",
type: 'POST', 
data: fd,
processData: false,
beforeSend: function (xhr) {
xhr.setRequestHeader ("X-Atlassian-Token", "no-check");
xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr.setRequestHeader("charset", "UTF-8");
},
success: function(data) {
alert("issue created");

},
error:function(data){
console.log(data);
},
complete:function(xhr,status){
console.log(xhr);
}
});



 

1 answer

1 vote
Blake April 12, 2017

Try eliminating this: 

xhr.setRequestHeader("Content-Type", "multipart/form-data");

And add this:

contentType: false,

 

Also, you will need to add a comment and minorEdit to your file data otherwise it won't work. So add this before the ajax request:

fd.append('comment', "foo");
fd.append('minorEdit', "true");

Suggest an answer

Log in or Sign up to answer