当 POST 请求中使用多部分时,Guzzlehttp 抱怨 headers

Guzzlehttp complaining about headers when multipart is being used in POST request

当我尝试使用 guzzlehttp 6 上传文件时:

$response = $this->client->post($uri, [
        'multipart'    => [
            [
                'name'     => 'File-Name',
                'filename' => $document->name,
                //'Mime-Type' => $document->mime_type,
                'contents' => fopen( $file->getPathname(), 'r' ),
                'headers'  => [
                    'Access-Token' => $this->token,
                ]
            ]
        ]
    ] );

我在尝试创建 headers:

时遇到错误
There was 1 error:

1) ExampleTest::testSend
ErrorException: trim() expects parameter 1 to be string, array given

/home/vagrant/intakes/vendor/guzzlehttp/psr7/src/MessageTrait.php:151
/home/vagrant/intakes/vendor/guzzlehttp/psr7/src/Request.php:53

我很难过。

尝试

$response = $this->client->post($uri, [
    'multipart' => [
        [
            'name' => 'File-Name',
            'filename' => $document->name,
            'contents' => fopen( $file->getPathname(), 'r' ),
        ],
    ],
    'headers' => [
        'Access-Token' => $this->token,
    ],
]);