Трехсторонний Oauth для API GetGlue - PullRequest
2 голосов
/ 26 октября 2011

Я некоторое время пытался использовать Oauth для подключения к API GetGlue, но безуспешно. Я скачал все библиотеки, которые смог найти (например, oauth-php) и попробовал каждый пример, который смог найти в интернете. Должен быть пример подключения Oauth к API GetGlue где-то, но я не могу его найти. У любого есть опыт работы с этим. Может быть, даже какой-нибудь пример кода?

Примечание. Все, что мне нужно, - это один запрос для моей учетной записи. Я пытался держаться подальше от растворов БД, потому что это совсем не нужно, так как в моей учетной записи будут сохраняться данные.

Ответы [ 2 ]

0 голосов
/ 28 октября 2013

GetGlue переключается / переключился на OAuth 2.0 для аутентификации. Вы могли бы быть более успешным с этим. Процесс аутентификации следует RFC 6749 .

После того, как вы зарегистрировали свое приложение на их портале OAuth 2.0 и получили идентификатор и секретный код клиента, сделайте что-нибудь вроде:

Загрузите URL-адрес авторизации, чтобы пользователь мог авторизовать ваше приложение:

// remove the line breaks!
https://api.getglue.com/oauth2/authorize?response_type=code
&scope=public+read+write
&redirect_uri=http://localhost
&client_id=<your OAuth client id>

Как только пользователь авторизует ваше приложение, GetGlue будет перенаправлять на заданный redirect_uri с параметром запроса кода, который вы должны перехватить, например

http://localhost&code=<auth code>

Передайте этот код в конечную точку токена, чтобы получить токен доступа, добавляемый в качестве параметра запроса при доступе к API v3:

// get tokens
https://api.getglue.com/oauth2/access_token?client_secret=<OAuth client secret>&grant_type=authorization_code&redirect_uri=ttp://localhost&code=<auth code>&client_id=<OAuth client id>

В случае успеха это вернет JSON. Имейте в виду, что они перенаправляют с HTTPS на HTTP там. Некоторые клиенты HTTP отказываются это делать.

{
   "token_type":"Bearer",
   "access_token":"<an access token>",
   "scope":"public read write",
   "expires_in":5184000, // in seconds from now
   "refresh_token":"<a refresh token>"
}

Передайте access_token в качестве параметра запроса при выполнении вызовов API. Если access_token истек, вызовите конечную точку токена с refresh_token в качестве кода авторизации, чтобы получить новый. Если это не помогло, пользователь должен снова авторизовать ваше приложение.

Также имеется библиотека Java (getglue-java) для нового API.

0 голосов
/ 26 октября 2011

Для GetGlue вы отправили электронное письмо для получения Ключа и Секрета потребителя и, таким образом, если у вас есть оба, тогда я легко смогу вам помочь. Я предоставлю вам все детали, чтобы сделать ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...