AEM Asset Upload 'completeURI' field invalid in initiateUpload response | Adobe Higher Education
Skip to main content
July 1, 2022
Répondu

AEM Asset Upload 'completeURI' field invalid in initiateUpload response

I am trying to upload an asset to my local AEMaaCS instance using the Asset Upload Api (specifically with the aem-upload node package). When I make the request I am not getting the URI that the document says I should.

Here is the request that I am using:

const encodedAuth = Buffer.from(`${username}:${password}`).toString('base64'); const uploadFiles = [ { fileName: 'test.png', fileSize: 4994, filePath: './src/resources/test.png' } ]; const upload = new DirectBinaryUpload(); upload.on('filestart', data => { console.log('filestart:', data); }); upload.on('fileprogress', data => { console.log('fileProgress:', data); }); upload.on('fileend', data => { console.log('FileEnd:', data); }); upload.on('fileerror', data => { console.log('FileError:', data); }); const options = new DirectBinaryUploadOptions() .withUrl('http://localhost:4502'+'/content/dam/test') .withUploadFiles(uploadFiles); options.withHeaders({ 'content-type': 'image/png', 'authorization': `Basic ${encodedAuth}` }); const uploadResult = await upload.uploadFiles(options) .then(result => { return result; }) .catch(error => { console.log('error:', error); return error; });

And the Response I recieve:

FileError: { fileName: 'test.png', fileSize: 4994, targetFolder: '/content/dam/test', targetFile: '/content/dam/test/test.png', sourceFolder: '/home/node/app/src/resources', sourceFile: '/home/node/app/src/resources/test.png', errors: [ { Error: 'completeURI' field invalid in initiateUpload response: {"folderPath":"/content/dam/test","files":[{"fileName":"test.png"}]} at UploadError.<anonymous> (/home/node/app/node_modules/core-js/internals/wrap-error-constructor-with-cause.js:37:62) at new Error (/home/node/app/node_modules/core-js/modules/es.error.cause.js:28:43) at new BlockTransferError (/home/node/app/node_modules/@adobe/httptransfer/es2015/block/blocktransfer-error.js:48:5) at new UploadError (/home/node/app/node_modules/@adobe/httptransfer/es2015/block/upload-error.js:100:5) at Function.fromError (/home/node/app/node_modules/@adobe/httptransfer/es2015/block/upload-error.js:76:14) at TransferController.controller.on.transferEvent (/home/node/app/node_modules/@adobe/httptransfer/es2015/aem/aemupload.js:324:34) at TransferController.emit (events.js:182:13) at TransferController.notifyError (/home/node/app/node_modules/@adobe/httptransfer/es2015/controller/transfercontroller.js:208:10) at /home/node/app/node_modules/@adobe/httptransfer/es2015/functions/aeminitiateupload.js:371:22 at Generator.next (<anonymous>) code: 'EUNKNOWN', innerStack: 'Error: \'completeURI\' field invalid in initiateUpload response: {"folderPath":"/content/dam/test","files":[{"fileName":"test.png"}]}\n at /home/node/app/node_modules/core-js/internals/wrap-error-constructor-with-cause.js:37:62\n at Error (/home/node/app/node_modules/core-js/modules/es.error.cause.js:28:43)\n at /home/node/app/node_modules/@adobe/httptransfer/es2015/functions/aeminitiateupload.js:309:17\n at Generator.next (<anonymous>)\n at resume (/home/node/app/node_modules/@adobe/httptransfer/es2015/functions/aeminitiateupload.js:142:362)\n at /home/node/app/node_modules/@adobe/httptransfer/es2015/functions/aeminitiateupload.js:142:540\n at process._tickCallback (internal/process/next_tick.js:68:7)', uploadError: true } ] }

I also noticed the following in my instance's error logs. I don't understand the "missing field: fileName" error as I am setting it as the documentation specifies in my example above and it is in the response.

 

Any help would be appreciated!

Ce sujet a été fermé aux réponses.
Meilleure réponse par Jacob_Bounteous

According to this source, https://medium.com/adobetech/introduction-to-aem-as-a-cloud-service-asset-upload-http-api-fc560ffd7221, the upload api does not work with local instances of AEMaaCS.

1 commentaire

Jacob_BounteousAuteurRéponse
July 1, 2022

According to this source, https://medium.com/adobetech/introduction-to-aem-as-a-cloud-service-asset-upload-http-api-fc560ffd7221, the upload api does not work with local instances of AEMaaCS.