Javascript 上载后未找到文件
我上传文件的功能有问题,我使用SailsJSJavascript 上载后未找到文件,javascript,node.js,Javascript,Node.js,我上传文件的功能有问题,我使用SailsJS fn: async function (inputs, exits) { const file = this.req.file('file') if (!file || file._files.length !== 1 || !_.includes(sails.config.custom.uploadAllowedMimeTypes, file._files[0].stream.headers['content-ty
fn: async function (inputs, exits) {
const file = this.req.file('file')
if (!file || file._files.length !== 1 ||
!_.includes(sails.config.custom.uploadAllowedMimeTypes, file._files[0].stream.headers['content-type'])) {
file.upload({ noop: true }) // prevent server from crash
return exits.badRequest()
}
file.upload({
maxBytes: sails.config.custom.uploadedFileMaxSize,
dirname: sails.config.custom.uploadDirectory
}, async (err, uploadedFiles) => {
if (err) { return exits.error(err) }
if (uploadedFiles.length === 0) { return exits.badRequest('No file was uploaded') }
const baseUrl = sails.config.custom.baseUrl
const fileId = path.basename(uploadedFiles[0].fd)
console.log(fileId)
const content = baseUrl + '/file/' + fileId
const name = uploadedFiles[0].filename
const attach = await Attachment.create({ content: content, name: name, fileID:fileId}).fetch()
return this.res.ok(attach)
// return exits.success({ url: `${baseUrl}/file/${fileId}` })
})
}
正确执行此函数后,将返回我的数据,就像它正确地将文件保存到数据库中一样
{
createdAt: 1584702842053,
updatedAt: 1584702842053,
id: 1,
name: "d16f3ed8-a290-477b-b39f-b90231254abf.pdf",
content: "http://localhost/file/e01c8cf9-90c8-40ce-9ba3-e4e46b39b4e1.pdf"
}
但是当我点击内容在浏览器中打开文件时,我得到了未找到
有人能帮忙吗?我想该文件已上载到
sails.config.custom.uploadDirectory
,你能检查一下这个文件夹吗?@vanto你知道那里应该有什么类型的url吗?现在我有了“localhost:80”,你能用控制台记录上传文件[0]的输出吗?那应该是上传的文件url@VanTho你知道那里应该有什么类型的目录吗?现在我有上传目录:`${process.cwd()}/uploadedFiles`,
C:\Users\…\Desktop\project\u name\backend\uploadedFiles\f8250146-3379-4228-b6a7-ffc5eca9a5b5.pdf