2013-06-17 6 views
0

Я использую https://code.google.com/p/goauth2/source/browse/oauth/example/oauthreq.go чтобы попытаться получить доступ к администратору только (через app.yaml) URL на моем сайте:oauth2 сайт на GAE

go run main.go -code CODE 

работает против URL-адрес Google API по умолчанию и возвращает свою информацию:

{ 
    ... 
    "gender": "male", 
    "locale": "en-GB" 
} 

Итак, у меня есть правильный код, по крайней мере!

Но доступ к моему сайту (с указанием -request_url) возвращает HTML-адрес для входа в систему учетной записи Google.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<title>Google Accounts</title> 

Так что, вероятно, что-то не так с моей установкой GAE ... The Google API, консоль имеет правильную «Главную страницу URL». Есть идеи?

Я пробовал использовать свой домен и домен apps, но доступ к URL-адресу администратора только перенаправляет моего клиента на страницу входа в учетную запись Google.

Я вижу, что запрос GET отправляется с заголовком Authorization: Bearer CODE.

+0

oauth предназначен для авторизации вашего приложения для пользователя, его не для авторизации какого-либо приложения в отношении какого-либо приложения, если ваше приложение должно иметь возможность получать запрос также с маркером oauth, вы должны написать этот код в своем приложении. так что поток usal, вы начинаете свое приложение, ни один пользователь, не делаете запрос на oauth url, пользователь разрешает запрос, вы получаете токен для разрешения, с помощью этого токена вы можете теперь получить доступ к данным пользователя. –

ответ

0

Ваше приложение не является потребителем OAuth. Google является поставщиком, но вашему приложению необходимо запросить доступ, так как пользователь должен его одобрить, а затем ваше приложение может использовать API Google. Отправка маркера OAuth в ваше приложение не дает вам cookie сеанса.