如何将 instagram api 与 guzzle 6+ 和 laravel 一起使用?

How to use instagram api with guzzle 6+ and laravel?

我正在尝试转换这个 url https://api.instagram.com/v1/users/self/?access_token=123456789

变成我可以用 guzzle 的东西。到目前为止我有:

$token = "123456789";    
$client = new \GuzzleHttp\Client();
    $res = $client->request('GET', 'https://api.instagram.com/v1/users/self/', [
        'access_token' => $token
    ]);
    echo $res->getStatusCode();
    // 200
    echo $res->getHeaderLine('content-type');
    // 'application/json; charset=utf8'
    echo $res->getBody();
    // {"type":"User"...'

但我收到一条错误消息:

Client error: `GET https://api.instagram.com/v1/users/self/` resulted in a `400 BAD REQUEST` response:
{"meta": {"error_type": "OAuthParameterException", "code": 400, "error_message": "Missing client_id or access_token URL (truncated...)

您应该像这样将令牌放在 query 中:

$client = new \GuzzleHttp\Client;

$response = $client->get('https://api.instagram.com/v1/users/self/', [
    'query' => [
        'access_token' => $token
    ]
]);

return $response->getBody();