记Laravel调用Gin接口调用formData上传文件的实现方法


Posted in PHP onDecember 12, 2019

第一次错误:

[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"])
      ]
    ]
  ]
]);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
某大型网络公司应聘时的笔试题目附答案
Mar 27 PHP
php学习 字符串课件
Jun 15 PHP
php一句话cmdshell新型 (非一句话木马)
Apr 18 PHP
PHP array_flip() 删除重复数组元素专用函数
May 16 PHP
PHP采集利器 Snoopy 试用心得
Jul 03 PHP
Zend Studio去除编辑器的语法警告设置方法
Oct 24 PHP
PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)
Jul 02 PHP
ThinkPHP调试模式与日志记录概述
Aug 22 PHP
PHP使用逆波兰式计算工资的方法
Jul 29 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
Aug 10 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
Nov 24 PHP
PHP命名空间(namespace)原理与用法详解
Dec 11 #PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 #PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
Dec 11 #PHP
关于PHP5.6+版本“No input file specified”问题的解决
Dec 11 #PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
Jan 07 #PHP
Laravel5.1 框架表单验证操作实例详解
Jan 07 #PHP
PHP字符串与数组处理函数用法小结
Jan 07 #PHP
You might like
德生PL990的分析评价
2021/03/02 无线电
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
php数组函数序列之sort() 对数组的元素值进行升序排序
2011/11/02 PHP
destoon实现资讯信息前面调用它所属分类的方法
2014/07/15 PHP
PHP高手需要要掌握的知识点
2014/08/21 PHP
ThinkPHP模型详解
2015/07/27 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
javascript 变量作用域 代码分析
2009/06/26 Javascript
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
尝试在让script的type属性等于text/html
2013/01/15 Javascript
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
JavaScript中的toUTCString()方法使用详解
2015/06/12 Javascript
修改js confirm alert 提示框文字的简单实例
2016/06/10 Javascript
JS把内容动态插入到DIV的实现方法
2016/07/19 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
详解Angular 开发环境搭建
2017/06/22 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
2018/06/15 Javascript
深入解析Python中的WSGI接口
2015/05/11 Python
利用Python查看目录中的文件示例详解
2017/08/28 Python
Python 编码规范(Google Python Style Guide)
2018/05/05 Python
python实现抖音点赞功能
2019/04/07 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
基于python二叉树的构造和打印例子
2019/08/09 Python
Python各种扩展名区别点整理
2020/02/27 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
python3中sys.argv的实例用法
2020/04/24 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
2020/06/28 Python
英国最大的纸工艺品商店:CraftStash
2018/12/01 全球购物
Hotels.com印度:酒店预订
2019/05/11 全球购物
DeinDesign德国:设计自己的手机壳
2019/12/14 全球购物
资深财务管理人员自我评价
2013/09/22 职场文书
党风廉政承诺书
2014/03/27 职场文书
教师岗位聘任书范文
2014/03/29 职场文书
四十九个javascript小知识实用技巧
2021/11/20 Javascript