如何在Laravel中使用Gin接口调用formData上传文件-创新互联

这篇文章给大家介绍如何在Laravel中使用Gin接口调用formData上传文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

站在用户的角度思考问题,与客户深入沟通,找到江山网站设计与江山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计、做网站、企业官网、英文网站、手机端网站、网站推广、域名注册网站空间、企业邮箱。业务覆盖江山地区。

第一次错误:


[output] 【c.FormFile error==>】 multipart: NextPart: EOF


file 没有传值,或者非预定格式,stream resource


第二次错误:

[output] 【c.FormFile error==>】 multipart: NextPart: bufio: buffer full


header头不需要 content-type => 'multipart/form-data'


php 调用参考:

你可以通过使用 multipart 请求参数来发送表单 (表单 enctype 属性需要设置 multipart/form-data ) 文件, 该参数接收一个包含多个关联数组的数组,每个关联数组包含一下键名:

  • name: (必须,字符串) 映射到表单字段的名称。

  • contents: (必须,混合) 提供一个字符串,可以是 fopen 返回的资源、或者一个

Psr\Http\Message\StreamInterface 的实例。

$response = $client->request('POST', 'http://post', [
  'multipart' => [
    [
      'name'   => 'field_name',
      'contents' => 'abc'
    ],
    [
      'name'   => 'file_name',
      'contents' => fopen('/path/to/file', 'r')
    ],
    [
      'name'   => 'other_file',
      'contents' => 'hello',
      'filename' => 'filename.txt',
      'headers' => [
        'X-Foo' => 'this is an extra header to include'
      ]
    ]
  ]
]);

ps:
multipart 格式如上,需要注意的是参数如果是数组,同样需要重组,不重组就是第三个问题:
Invalid resource type: array


修改参数格式为 json, 毕竟跨语言 json xml 才是王道

```
$response = $client->request('POST', 'http://post', [
    'multipart' => [
      [
        'name'   => 'field_name',
        'contents' => json_encode(["abc", "abd"])
      ]
    ]
  ]
]);

关于如何在Laravel中使用Gin接口调用formData上传文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前文章:如何在Laravel中使用Gin接口调用formData上传文件-创新互联
网站地址:http://bzwzjz.com/article/gpcci.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站制作公司 移动手机网站制作 H5网站制作 成都做网站建设公司 成都网站设计公司 网站设计 网站建设费用 外贸网站设计方案 网站建设 网站建设推广 网站建设公司 宜宾网站设计 成都网站建设 成都网站设计 成都网站建设 成都网站建设公司 手机网站制作 成都网站制作 网站制作 阿坝网站设计 定制网站建设多少钱 教育网站设计方案