Я пытаюсь получить доступ к API, который использует OAuth: https://developer.atpco.net/api/oauth/gettoken, и я хотел бы иметь возможность получить мой токен в форме JSON, например:
{
"access_token": "CSX9w8dKQAThqUQYKalJT60ZXZ0fRe39lQu0GSs4ZC449G0F7tsaji",
"token_type": "Bearer",
"expires_in": 3600,
"scope": "resource.WRITE resource.READ"
}
У меня есть мой client_id и мой client_secret.Почтальон и Python работают отлично, и я могу получить токен доступа, но у меня возникают проблемы с репликацией этих результатов с помощью PHP.Можете ли вы взглянуть на мой код и помочь, пожалуйста?
Я пробовал это решение:
<?php
session_start();
$CLIENT_ID = "xxxxxxxxxx";
$CLIENT_SECRET = "xxxxxxxxxxxxxxx";
$CALLBACK = "http://localhost";
function getAccessCode($client_id, $callback, $client_secret, $request_code) {
$curl = curl_init("https://developer.atpco.net/api/oauth/gettoken");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, rawurldecode(http_build_query(array(
'client_id' => $client_id,
'redirect_uri' => $callback,
'client_secret' => $client_secret,
'code' => $request_code,
'grant_type' => 'authorization_code'
))));
$json = json_decode(curl_exec($curl));
return $json->access_token;
sprintf($access_token);
}
, но, похоже, мой токен доступа не найден: /