如何通过PHP GuzzleHttp\Client发布请求文件图像数据二进制

如何通过PHP GuzzleHttp\Client发布请求文件图像数据二进制,php,curl,binary,guzzlehttp,Php,Curl,Binary,Guzzlehttp,我使用的是api SAFR,我想从AWS S3导入一个人脸图像url 在文档命令curl中 curl -v -X POST -H "Content-Type:application/octet-stream" -H "X-RPC-DIRECTORY: main" -H "X-RPC-AUTHORIZATION: userid:pwd" -H "XRPC-PERSON-NAME:First Last" -H "

我使用的是api SAFR,我想从AWS S3导入一个人脸图像url

在文档命令curl中

curl -v -X POST -H "Content-Type:application/octet-stream" -H "X-RPC-DIRECTORY: main" -H "X-RPC-AUTHORIZATION: userid:pwd" -H "XRPC-PERSON-NAME:First Last" -H "X-RPC-EXTERNAL-ID: 0000001" "https://covi.real.com/people?update=false" --data-binary @IMG_0000001.jpg
我正试图通过GuzzleHttp\Client将其转换为post请求 我的代码:

但它不正确,并返回一个错误:

400 Bad Request` response:↵{"message":"Content type 'multipart/form-data;boundary=6506e88515760a7c6901a4f3a42ewe2220ed1a2e6a33ae' not supported"

我尝试过cURL-PHP,但也没有成功,我不知道我错在哪里,希望大家帮助,谢谢

傻,我在stackoverflow中找到了答案,发布了这个问题

$headers = [
        'X-RPC-DIRECTORY' => 'main',
        'X-RPC-AUTHORIZATION' => $this->userid.':'.$this->pwd,
        'XRPC-PERSON-NAME' => $this->person_name,
        'X-RPC-EXTERNAL-ID' => $this->external_id,
    ];

    $client = new Client(['headers' => $headers]);

    try {
        $request = $client->post($this->endpoint, [
            'query' => ['update' => 'false'],
            'body' => file_get_contents($this->image_url),
        ]);
        $response = $request->getBody();
        return $response;
    } catch (Exception $e) {
        return $e;
    }
$headers = [
        'X-RPC-DIRECTORY' => 'main',
        'X-RPC-AUTHORIZATION' => $this->userid.':'.$this->pwd,
        'XRPC-PERSON-NAME' => $this->person_name,
        'X-RPC-EXTERNAL-ID' => $this->external_id,
    ];

    $client = new Client(['headers' => $headers]);

    try {
        $request = $client->post($this->endpoint, [
            'query' => ['update' => 'false'],
            'body' => file_get_contents($this->image_url),
        ]);
        $response = $request->getBody();
        return $response;
    } catch (Exception $e) {
        return $e;
    }