首页 > 解决方案 > 尝试将图像发布到 Cloudinary 时,我不断收到错误请求错误

问题描述

axios我正在尝试使用and将图像上传到 cloudinary react。我有两个功能。一个用于附加 formData,另一个用于发出请求

// APPEND CLOUDINARY DETAILS
export function appendCloudinaryDetails(fileUrl){
  let formData = new FormData();
  formData.append("api_key", 'APIKEYHERE');
  formData.append("api_secret", 'APISECRETHERE');
  formData.append("file", 'fileUrl');
  formData.append("cloud_name", fileUrl);
  formData.append("upload_preset", "rhi2i6xg");    
  return formData;
}

// STORE THE DATA ON CLOUDINARY
export function storeOnCloudinary(formData){
  return () => {
    return axios.post("https://api.cloudinary.com/v1_1/my-company/image/upload", formData,{
      headers: { "X-Requested-With": "XMLHttpRequest", "Allow-Control-Allow-Origin": "*" },
    });
  }
}

这就是我使用它的方式:

// Append Cloudinary Details
let formData = appendCloudinaryDetails(this.state.backdropCroppedImageUrl);

// Store the backdrop on Cloudinary
this.props.storeOnCloudinary(formData).then(
   response => {
     ...
   }
);

但是运行它会给我一个400错误响应。如下所示:

在此处输入图像描述

标签: javascriptnode.jsreactjscloudinary

解决方案


我不知道这是否是您的代码的忠实副本,或者为了隐藏发布的问题中的敏感信息而对其进行了更改,但据此,您将backdropCroppedImageUrl作为“cloud_name”附加到 formData 而不是设置它在“文件”上,在“文件”中你正在设置一个字符串。


推荐阅读