如何使用http POST请求作为formData发送文件?

哈斯尼·伊希布(Hasni Iheb)

我正在使用swagger 2.0来记录我的API。我定义了一个资源/ getsize,如下面的代码片段所示:

    post:
      operationId: users.getSize
      tags:
        - Users
      summary: Measure your body
      description: import a photo
      consumes:
         - multipart/form-data
      parameters:
        - in: formData
          name: image1
          type: file
          required: true
        - in: path
          name: height
          type: number
          required: true

当我尝试从sawgger ui发送请求时,得到了预期的结果。但是,当我尝试使用Angluar组件访问此资源时会出现问题,这里是component.ts文件的代码片段:

onSubmit() {
    const formData = new FormData();
    formData.append('image1', this.image);
    console.log(formData.getAll);
    console.log(this.image);
    this.http.post(endpoint,formData);
    .subscribe(res => {
        console.log(res);
        alert('SUCCESS !!');
      })
}

服务器响应为:

error:
detail: "Missing formdata parameter 'image1'"
status: 400
title: "Bad Request"
type: "about:blank"

有什么建议 ?

拉朱佩达

您可以使用URLSearchParams作为请求的主体来执行此操作,angular会自动将内容类型设置为application / x-www-form-urlencoded并对主体进行正确编码。

这篇文章详细解释了答案

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何发送POST请求?

如何发送POST请求并获得文件响应?

如何在Java中使用Post参数发送简单的HTTP Post请求

使用C#发送HTTP POST请求

如何使用node.js将.json文件作为HTTP POST发送?

如何使用akka http发送文件作为响应?

如何使用Http POST请求发送表情符号

更新:如何使用http包在流星中将Json数据作为POST请求发送

如何在CURL POST命令中将JSON文件作为请求正文的一部分发送

如何在HTTP POST请求的正文中发送“ ogg”文件?

Spark发送DataFrame作为HTTP Post请求的主体

使用Axios访问作为FormData发送的数据

如何使用axios补丁请求发送FormData?

如何从Akka HTTP POST请求读取JSON正文并将最终响应作为JSON数组发送

如何从手机上载文件并将其作为FormData Ionic 4发送

如何使用Python发送多个HTTP请求

使用HTTP标头发送POST请求

NodeJS:如何通过请求POST发送文件

如何以多部分形式将多个文件作为附件发送[HTTP POST请求]

如何使用Spray在Http Post中发送FormData

如何将 POST 请求发送到其他服务器绑定文件到 formdata

如何在 POST 请求中将 textarea 值作为参数发送

Laravel 无法从 HTTP POST 请求访问 FormData?

如何使用http发送文件

如何在 Ruby 中使用 Post 请求发送 XML 文件

如何使用 Avro 文件发送 http post 请求?

为什么在发送 POST 请求时要使用 FormData 而不是 JSON?

文件未在 Ajax 请求中使用 FormData 发送

如何在多部分请求中将图像文件作为 http 正文参数(POST)传递