后端获取TOKEN返oss上传地址,前端如何将字符串传给这个地址

发布时间 2023-06-07 19:05:51作者: 稳住别慌
您也可以使用 Axios 库来发送请求,以下是发送表单请求的示例代码:

const axios = require('axios');

function uploadStringToOSS(ossPostData, content) {
  const formData = new FormData();
  Object.keys(ossPostData.fields).forEach(key => {
    formData.append(key, ossPostData.fields[key]);
  });
  const blob = new Blob([content]);
  formData.append('file', blob, 'filename.txt');
  return axios.post(ossPostData.url, formData, {
    headers: {
      'Content-Type': 'multipart/form-data',
    },
  }).then((response) => {
    // 处理响应结果
  }).catch((error) => {
    console.log(error);
  });
}
ossPostData 参数为从后端获取到的签名信息,content 参数为上传的字符串内容。将内容转换成 Blob 对象后,添加到表单数据中,使用 Axios 
的 post 方法发送 POST 请求即可上传。 需要注意的是,此处指定的 Content-Type 为 multipart/form-data,需要使用 FormData 对象将请求数据进行编码。
您也可以将 Content-Type 修改为 application/octet-stream,直接将内容作为请求主体发送,但需要在后端做相应的解析。