尝试向服务器nodeJS发送数据时未定义



我正试图将数据发送到我的服务器,以便我可以使用外部API。我现在正在慢慢学习,所以请原谅我的无知:)在下面的代码中,我将数组的元素转换为base64字符串(解决方案)。这些字符串是那些我想发送到服务器取回,但节点服务器返回未定义。我想我在某种过程中是错误的(阅读async/await等)…有人能帮我一下吗?非常感谢。

NODEJS:
app.post("/upload",upload.any(),(req,res)=>{
console.log(req.files)
res.setHeader("Access-Control-Allow-Origin","*")
res.end("Done.")
});
CLIENT SIDE:
function getBase64(item,index,arr) {
let reader = new FileReader();
reader.readAsDataURL(item);
reader.onload = function(e) {
var rawLog = reader.result; // DataURL - rawLog
var solution = rawLog.split("base64,")[1]; //Rimozione parte prima di base64 
//  console.log(solution);
//  console.log(rawLog);
fetch("http://localhost:3000/upload",{
method:'post',
mode: 'no-cors',
body:solution
}).catch(console.error);
return reader.result;
};}

当你在请求中使用mode: 'no-cors'时,你不能访问API响应,你应该在后端配置cors以允许来自所有来源的请求,并从请求中删除mode: 'no'cors'

https://expressjs.com/en/resources/middleware/cors.html

最新更新