у меня проблема здесь, я просто не могу заставить uber вернуть что-то еще, кроме
Я активировал все области в приложении, созданном на панели инструментов Uber (даже те, которые имеют ограниченный доступ), и разрешил доступ к приложению через POSTMAN.
{"code":"unauthorized","message":"Invalid OAuth 2.0 credentials provided."}
URI перенаправления на мой локальный хост, где я использую следующий код:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://sandbox-api.uber.com/v1.2/me"); //v2 does not work for some reason
//curl_setopt($ch, CURLOPT_URL, "https://api.uber.com/v1.2/me"); //i used this aswel, same thing happens
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
$headers = array();
$headers[] = "Authorization: Bearer ".$_GET['code']; #$_GET['code'] has been replaced by my oauth2 token
$headers[] = "Accept-Language: en_US";
$headers[] = "Content-Type: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
echo "<pre>";
print_r($headers);
$result = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo "<li>".$httpcode;
echo "<pre>";print_r($result);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close ($ch);
Это ответ, который я получаю из приведенного выше кода:
Array
(
[0] => Authorization: Bearer auth-token-from-get //please let me know if i made the header correctly
[1] => Accept-Language: en_US
[2] => Content-Type: application/json
)
401
{"code":"unauthorized","message":"Invalid OAuth 2.0 credentials provided."}
Может ли кто-нибудь дать мне подсказку здесь? Я искал решение повсюду, и его действительно трудно найти
Вы имеете в виду 1) Пользователь авторизует ваше приложение - готово 2) Получение перенаправления - выполнено?
Я имею в виду авторизовать всадника для шагов 1–2–3 вашего приложения, потому что носитель в вашем типе токена авторизации, по-видимому, предназначен для носителя. может быть вы могли бы попробовать изменить bearer на token или я просто ошибаюсь и я не знаю, как вам помочь
если я закручу по этой ссылке песочница-api.uber.com/v1.2/… с токеном = серверный токен, он вернет информацию, но для этого не требуется токен OAUTH2
Когда вы пробуете Quickstart, он работает? Это до первого шага
да, это работает, когда я обращаюсь к нему в первый раз, Uber запрашивает разрешение для конкретного приложения, и я могу разрешить доступ, но после этого приложение не будет работать ни с одним запросом, я либо получаю {"error":"invalid_grant "} или {"ошибка":"invalid_request"}






Вы в первый раз сделали два других шага, прежде чем получить учетные данные OAuth 2.0 для носителя? потому что похоже, что это не то же самое, что первичный