相关疑难解决方法(0)

使用Guzzle 6上传文件到API端点

我可以使用Postman将文件上传到API端点.

我试图将其转换为从表单上传文件,使用Laravel上传并使用Guzzle 6发布到端点.

它在Postman中的外观截图(我故意省略了POST URL) 在此输入图像描述

下面是您在POSTMAN中单击"生成代码"链接时生成的文本:

POST /api/file-submissions HTTP/1.1
Host: strippedhostname.com
Authorization: Basic 340r9iu34ontoeioir
Cache-Control: no-cache
Postman-Token: 6e0c3123-c07c-ce54-8ba1-0a1a402b53f1
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="FileContents"; filename=""
Content-Type: 


----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="FileInfo"

{ "name": "_aaaa.txt", "clientNumber": "102425", "type": "Writeoff" }
----WebKitFormBoundary7MA4YWxkTrZu0gW
Run Code Online (Sandbox Code Playgroud)

以下是用于保存文件和其他信息的控制器功能.文件上传正确,我能够获取文件信息.

我认为我遇到的问题是使用正确的数据设置multipart和headers数组.

public function fileUploadPost(Request $request)
{
    $data_posted = $request->input();
    $endpoint = "/file-submissions";
    $response = array();
    $file = $request->file('filename');
    $name = time() . '_' . $file->getClientOriginalName();
    $path = base_path() .'/public_html/documents/';

    $resource = fopen($file,"r") or die("File upload Problems");

    $file->move($path, $name);

    // …
Run Code Online (Sandbox Code Playgroud)

php api laravel guzzle guzzle6

23
推荐指数
1
解决办法
3万
查看次数

标签 统计

api ×1

guzzle ×1

guzzle6 ×1

laravel ×1

php ×1