gpt4 book ai didi

javascript - 通过Node将react-webcam的base64图像上传到cloudinary

转载 作者:太空宇宙 更新时间:2023-11-03 23:50:06 24 4
gpt4 key购买 nike

我是新手,非常感谢您的帮助。我有以下代码,可以在通过 Node 将 jpg 上传到 cloudinary 时使用。

onChange中调用以下方法;

uploadProfilePic = e => {
const files = Array.from(this.state.profilePic)
const formData = new FormData()

files.forEach((file, i) => {
formData.append(i, file)
})
fetch(`http://localhost:3030/imageUpload`, {
method: 'POST',
body: formData
})
.then(res => res.json())
.then(images => {
this.setState({profilePic: images[0].url})
})
}

在我的 server.js 文件中;

  const values = Object.values(req.files)
const promises = values.map(image => cloudinary.uploader.upload(image.path))

Promise
.all(promises)
.then(results => res.json(results))
})

上面成功地将 jpg 上传到 cloudinary 并按预期将 url 设置为我的状态。

只是想知道如何调整上面的两个代码块,以便能够上传通过react-webcam捕获的base64图像*,该图像存储在我的状态{this.state. passImage} 来实现相同的结果(又名上传到 cloudinary 并检索 URL)?

到目前为止我已经尝试过了

uploadPassImage= e => {

const formData = JSON.stringify(this.state.passImage)

fetch(`http://localhost:3030/imageUploadPassImage`, {
method: 'POST',
body: formData
})
.then(res => res.json())
.then(images => {
this.setState({passImage: images[0].url})
})
}

与服务器代码;

  app.post('/imageUploadPassImage', (req, res) => {
const values = Object.values(req.files)
const promises = values.map(image => cloudinary.uploader.upload(image.path))

Promise
.all(promises)
.then(results => res.json(results))
})

没有运气。

最佳答案

我明白了。对于任何想知道或遇到相同问题的人,我会将其发布在这里。

react

uploadPassImage= e => {
const files = Array.of(this.state.passImage)


const formData = new FormData()

files.forEach((file, i) => {
formData.append(i, file)
})
fetch(`http://localhost:3030/imageUploadPassImage`, {
method: 'POST',
body: formData
})
.then(res => res.json())
.then(images => {
this.setState({passImage: images[0].url})
//sets the data in the state for uploading into SQL database later
})
}

在服务器上;

app.post('/imageUploadPassImage', (req, res) => {
const values = Object.values(req.body)
const promises = values.map(image => cloudinary.v2.uploader.upload(image,
function(error, result) {console.log(result, error); }));

Promise
.all(promises)
.then(results => res.json(results))
})

关于javascript - 通过Node将react-webcam的base64图像上传到cloudinary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59763374/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com