Как получить токен доступа от Yammer без входа пользователя?

Вот документы Yammer: https://developer.yammer.com/

Когда я пытаюсь сделать запрос через браузер, я могу получить токен доступа
https://www.yammer.com/oauth2/authorize?client_id=[:client_id]&response_type = код&redirect_uri = [: redirect_uri]

Однако я должен сделать это программно. Поэтому, пока мой API выполняет запрос к любой конечной точке Yammer, следует создать новый токен доступа, если срок действия токена истек. Но я наткнулся на следующий скриншот:
вот скриншот

Я думаю о заголовках моего запроса. Я добавил несколько заголовков (пользовательский агент)

    public function getCode(Request $request)
{
$code = $request->get('code');

$client = new \GuzzleHttp\Client();

if (!is_null($code)) {
$res = $client->request(
'GET',
'https://www.yammer.com/oauth2/access_token.json?client_id='.$this->clientId.'&client_secret='.$this->clientSecret.'&code='.$code
);
echo $res->getBody();
}else {
$res = $client->request(
'GET',
'https://www.yammer.com/oauth2/authorize?client_id='.$this->clientId.'&response_type=code&redirect_uri='.$this->redirectUri,
[
'headers' => [
'User-Agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'
]
]
);

echo $res->getBody();
}
}

P.S: редирект uri был таким же действием для моего примера кода.

0

Решение

После выполнения запроса попробуйте приведенный ниже код вместо echo $ res-> getBody ();

$response =json_decode($res->getBody(), true);
return $response;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]