0
我一直在使用Node.js進行一個項目,一切都一直很順利。我使用快遞以及節點。總體而言,我的目標非常簡單...將圖像上載到服務器的上傳文件夾中。奇怪的是上傳本身實際上工作,但是當我去使用「重命名」功能它說路徑是錯誤的/權限與這個錯誤:ENOENT。OSX Node.js文件上傳ENOENT
我也測試過,通過調用read函數來檢查文件路徑,以確保路徑100%正確。似乎只有當它試圖修改文件,所以我推斷這是一個權限問題(除非對重命名函數有某種特殊要求)。我注意到每次文件上傳時,權限都設置爲「自定義」,並且只爲每個用戶授予讀取權限,但用戶名除外。我會發布這類關係到下面這個問題的代碼:
/app/routes.js
var fs = require('fs');
app.post('/api/file-upload/:page_id', function(req, res) {
// fs.readFile(tmp_path, function (err, data) {
// if (err) throw err;
// console.log(data);
// });
var target_path = './public/images/' + req.files.featuredimg.name;
fs.rename(req.files.featuredimg.path, target_path, function(err) {
if (err) throw err;
fs.unlink(tmp_path, function() {
if (err) throw err;
res.send('File uploaded to: ' + target_path + ' - ' + req.files.featuredimg.size + ' bytes');
});
});
});
server.js
app.use(express.bodyParser({uploadDir:'./uploads'}));
一切都在根文件夾結束了旁邊服務器.js in/uploads按預期工作。我似乎無法修改它們。我試過了我能想到的所有東西,並查找了問題。希望這是一個簡單的修復。
希望有人能幫我解決這個問題。我真的很感激它!
確保你有'圖像'文件夾在公共。我有類似的問題。 –
非常感謝!我真的認爲它與第二個參數無關,因爲它一直說第一個是問題。 – Nightshayde
對不起,延遲,使用本網站一點點新 – Nightshayde