我正在尝试通过HTML表单提交的图像,然后通过节点应用程序上传到imagekit中。我完全搞不懂这个配置。任何帮助都将不胜感激。
const app = express();
const multer = require('multer');
const path = require('path');
const upload = multer({
dest: "uploads/" // "uploads"
});
var ImageKit = require("imagekit");
var fs = require('fs');
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(express.urlencoded({extended: true}));
var imagekit = new ImageKit({
publicKey : "public_6ImvGNsOViPhZ*******",
privateKey : "private_IZ1pjwUR9F********",
urlEndpoint : "https://ik.imagekit.io/*****/"
});
app.get('/upload', (req, res) => {
res.render('index')
})
app.post('/upload', upload.single("image"), (req, res) => {
fs.readFile('uploads/' + req.file.filename, function(err, data) {
if (err) throw err; // Fail if the file can't be read.
imagekit.upload({
file : req.file, //required
fileName : req.file.filename + '.jpg', //required
tags: ["tag1", "tag2"]
}, function(error, result) {
if(error) console.log(error);
else console.log(result);
});
});
console.log(req.file.filename);
res.redirect('/upload');
})发布于 2021-08-19 06:40:25
您不需要将您的图像发送到节点app,然后再上传,您可以通过后端身份验证端点直接从客户端上传您的图像。您可以使用imagekit-javascript sdk来实现此目的。它还有一个你可以参考的sample app。
https://stackoverflow.com/questions/68279103
复制相似问题