Ошибка средства выбора диска Google
Я получаю следующее сообщение об ошибке при доступе к устройству выбора Google Drive, однако оно отображается правильно без каких-либо ошибок.
Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://docs.google.com') does not match the recipient window's origin ('http://localhost').
Invalid 'X-Frame-Options' header encountered when loading 'https://docs.google.com/picker?protocol=gadgets&origin=http%3A%2F%2Flocalho…%3Atrue%7D))&rpctoken=e2x1eop3h1rr&rpcService=2qeo0ns6gu13&thirdParty=true': 'ALLOW-FROM http://localhost' is not a recognized directive. The header will be ignored.
PSB скриншот с моей консоли разработчика
Также я упоминал об этом вопросе. Google Drive Picker - недопустимый ключ разработчика - ошибка, но я думаю, что в Google API произошли некоторые изменения, поэтому эта функция не работает.
Фрагмент кода -
var picker = new google.picker.PickerBuilder()
.setLocale(lkGoogleSettings.locale)
.setOAuthToken(accessToken)
.setCallback(pickerResponse)
.setOrigin(lkGoogleSettings.origin);
Спасибо
1 ответ
Как уже упоминали некоторые из комментаторов, X-Frame-Option
ошибка известна ошибка в Chrome
, Вы можете увидеть долгую дискуссию об этом здесь.
Теперь для реальной проблемы: origin matching
, Google Диск плохо работает с локальным хостом, с портом или без него, независимо от того, добавляете ли вы его к своим источникам в разрешениях для идентификатора клиента.
Однако есть надежда. Если вы настроили домен в своем хост-файле так, чтобы он указывал на localhost, вы можете добавить домен к своему источнику в консоли Google App, и все будет работать как положено!
Я делаю это все время, чтобы протестировать свои приложения. Например:
- добавлять
dev.mysite.com
на вашhostfile
(/etc/hosts в Mac). - Скопируйте домен в ваших разрешениях для вашего приложения выбора в
Google App Console
и тебе надо идти. - Начните свой сайт, используя
dev.mysite.com:80
* и Drive Picker теперь должны работать правильно.
* Примечание: вы должны обслуживать порт 80. Google вообще плохо работает с портами, поэтому, когда вы переходите на свой сайт, адрес должен быть dev.mysite.com
без порта.