0
我正在構建一個web應用程序,需要顯示一些圖像,前端使用VueJS構建,後端使用AdonisJS構建。VueJS/AdonisJs圖像上傳和使用
我目前有一個問題,我上傳圖片從我的前端到我的後端。 AdonisJS會生成一個本地存儲路徑。作爲例子,我從我的前端以這種形式上傳:
使用此代碼對VueJS側:
let formData = new FormData();
let imagefile = document.querySelector('#file');
formData.append("image", imagefile.files[0]);
axios.post('/users/' + this.user.id + "/image", formData, {
headers: {
'Content-Type': 'image/*'
}
})
而且在AdonisJS側:
* updateProfilePicture(request, response) {
const image = request.file('image', {
maxSize: '20mb',
allowedExtensions: ['jpg', 'png', 'jpeg']
})
const userId = request.param('id');
const user = yield User.findOrFail(userId)
const fileName = `${new Date().getTime()}.${image.extension()}`
yield image.move(Helpers.storagePath(), fileName)
if (!image.moved()) {
response.badRequest(image.errors())
return
}
user.profilepicture = image.uploadPath()
yield user.save();
response.ok(user);
}
目前正在工作,但生成AdonisJS使用的路徑:
ProjectFolder/backend/storage/1500586654324.jpg
個
VueJS位於:
ProjectFolder/frontend/*
我如何用我上傳的圖片在前臺?有什麼方法可以將這些框架結合起來?