Using AngularJS, I'm making a post
request to send an array of objects, with each object comprising of string, boolean and object values. The object represents a file uploaded by the user. Before the request, it shows as a file object (signedPoaDoc
), and after a response, the data shows that a file was included in the reqeust
We are having issues in the back-end, but the back end developer is saying that the payload in the console is showing no file is being provided, but an empty object for signedPoaDoc
.
html
<form name="validationForm" novalidate>
<data-ng-init="formData.designatedStates">
<div data-ng-repeat="states in formData.designatedStates"
data-ng-init="formData.designatedStates.states;
states.signedPoaDoc">
<div>
<label for="{{states.stateName}}">{{states.stateName}}: </label>
<div>
<input type="file" name="{{states.stateName}}"
data-ng-model="states.signedPoaDoc"
accept="application/pdf" required>
</div>
</div>
</div>
</div>
</form>
JS
function removeCost(item) {
delete item.validationCost_EUR;
delete item.validationCost_USD;
if(!item.signedPoaDoc) { item.signedPoaDoc = null; };
return item;
}
function submitPoaDocuments(data) {
var formData = new FormData();
var designatedMap = data.designatedStates.map(removeCost);
var extensionMap = data.extensionStates.map(removeCost);
var validationMap = data.validationStates.map(removeCost);
formData.append('patentID', patent.patentID);
formData.append('designatedStates', designatedMap);
formData.append('extensionStates', extensionMap);
formData.append('validationStates', validationMap);
validationService.submitPoas(formData)
.then(
function(response){
}
)
}
As you can see we assigned the signedPoaDoc
property from the view via ngModel
.
Question
Is this correct that no file is being provided to back end, or is this something to do with chrome and the way they display the payload?