Laravel Http模拟postman请求失败!

代码

$body = [
    'dataid' => (string) $info['id'],
    'source' => config('lbs.source'),
    'data' => json_encode($data)
];

$response = Http::withHeaders([
    //到底哪种写法是对的?
    'Content-Type' => 'multipart/form-data'
    //"Content-Type: multipart/form-data"
])->post($url, $body);

让PHP再次伟大
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

body里面是不是要加上form_params

$body = [
    'form_params' => [
        'dataid' => (string) $info['id'],
        'source' => config('lbs.source'),
        'data'   => json_encode($data)
    ];
]

如果请求头是multipart/form-data就把form_params换成multipart

$body = [
    'multipart' => [
        [
            'name'           =>    'dataid',// (string, required) 表单字段名称
            'headers'        =>    ['xxx' => 'xxx'],// (array) 可选的表单元素要使用的键值对数组
            'contents'       =>    'xxx',// (StreamInterface/resource/string, required) 表单元素中要使用的数据
            'filename'       =>    'xxx'//(string) 可选的作为要发送的文件名称

        ],
        [...]
]
1年前 评论
勇敢的心 (楼主) 1年前
讨论数量: 13

body里面是不是要加上form_params

$body = [
    'form_params' => [
        'dataid' => (string) $info['id'],
        'source' => config('lbs.source'),
        'data'   => json_encode($data)
    ];
]

如果请求头是multipart/form-data就把form_params换成multipart

$body = [
    'multipart' => [
        [
            'name'           =>    'dataid',// (string, required) 表单字段名称
            'headers'        =>    ['xxx' => 'xxx'],// (array) 可选的表单元素要使用的键值对数组
            'contents'       =>    'xxx',// (StreamInterface/resource/string, required) 表单元素中要使用的数据
            'filename'       =>    'xxx'//(string) 可选的作为要发送的文件名称

        ],
        [...]
]
1年前 评论
勇敢的心 (楼主) 1年前

请求头错了吧

1年前 评论
勇敢的心 (楼主) 1年前
风吹过有夏天的味道 (作者) 1年前
勇敢的心 (楼主) 1年前

multipart/form-data 这个基本是用来上传文件的

1年前 评论
勇敢的心 (楼主) 1年前
deatil (作者) 1年前

就你上面截图的请求,你参考我的,就对了

$body = [
    'dataid' => (string) $info['id'],
    'source' => config('lbs.source'),
    'data' => json_encode($data)
];
$response = Http::asForm()->post($url, $body);
1年前 评论

直接用github.com/Yurunsoft/YurunHttp 很香、各种链式操作

1年前 评论
勇敢的心 (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!