45

Я установил файлы образцов API реального времени Google Диска на моем веб-сервере, следуя these instructions, включая создание client_id в Cloud Console и вставка его в файл index.html.Ошибка: invalid_client нет зарегистрированного источника

Когда я посещаю эту страницу и нажмите на кнопку, чтобы авторизовать приложение, оно всплывает с новым окном и показывает:

Error: invalid_client
no registered origin

ПОДРОБНО.Подробнее Запрос являются:

openid_connect_request=true 
cookie_policy_enforce=false 
scope=https://www.googleapis.com/auth/drive.install https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/plus.me 
response_type=token 
access_type=online 
redirect_uri=postmessage 
proxy=oauth2relay865404532 
origin=http://mywebsite.com 
state=264939258|0.165356673 
display=page 
client_id=1077585001321.apps.googleusercontent.com 
authuser=0 

Я могу» t увидеть любой другой client_id, который я должен использовать в Cloud Console. Кто-нибудь знает, как преодолеть эту ошибку? Спасибо за вашу помощь.

ответ

60

В новом Google API консоли, настроить ваш OAuth 2.0 уполномочил происхождение от

Your Project > APIs & auth > Credentials 

Вам может понадобиться для добавления нового идентификатора клиента специально для веб-приложения (я сделал это, потому что по умолчанию был для AppEngine)

Create Client ID > Web Application > Authorized Javascript origins 

Если вы работаете на локальном сервере Dev, просто добавьте точный URL, такие как:

http://127.0.0.1:9000 
+0

Великий ответ, точно решить мою проблему! –

+1

Я хотел бы узнать о том, как ввести URL-адрес localhost для авторизованных источников JavaScript. Поскольку я работал на машине localhost и после ввода URL-адреса localhost, как «http: 127.0.0.1/myProjectName», он выбрасывает «Исходные URI-файлы не должны укажите путь: http://127.0.0.1/myProjectName/ ' – Daenarys

+2

Вы просто сказали бы: «http: // localhost: 13091» (независимо от вашего локального хоста) без упоминания имени вашего проекта - работал на меня! Спасибо за этот ответ! – sim1

15

ОБНОВЛЕНИЕ: вместо этого я изменил принятый ответ на вопрос Джонсона Скотта, поскольку он ссылается на более новую версию консоли, тогда как моя была верна только для более старой версии.


Я решил. Мне нужно было ввести WEB ORIGIN на экране идентификатора клиента OAuth 2.0. В частности, это должен быть точный путь/url файла index.html, в противном случае он по умолчанию не соответствует корневому домену, который не работает.

Этот скриншот показывает, где именно он должен быть введен:

enter image description here

Смежные вопросы