cod*_*rix 13 javascript google-api angularjs google-picker
我在访问谷歌驱动器选择器时遇到以下错误,但是选择器正确显示没有任何错误.
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.
Run Code Online (Sandbox Code Playgroud)
PSB我的开发者控制台的截图
此外,我已经提到这个问题谷歌驱动器选择器 - 开发人员密钥无效错误,但我认为谷歌api有一些变化,所以这件事不起作用.
代码段 -
var picker = new google.picker.PickerBuilder()
.setLocale(lkGoogleSettings.locale)
.setOAuthToken(accessToken)
.setCallback(pickerResponse)
.setOrigin(lkGoogleSettings.origin);
Run Code Online (Sandbox Code Playgroud)
谢谢
正如一些评论者提到的那样,该X-Frame-Option错误是中的已知错误Chrome。您可以在这里看到有关它的长时间讨论。
现在,针对真正的问题:origin matching。不论是否将localhost与端口一起使用,Google Drive都不能很好地运行,无论您是否将其添加到您的客户端ID权限的源中。
但是,有希望。如果您在主机文件中设置了一个指向localhost的域,则可以将该域添加到您在Google App控制台中的源中,一切都会按预期进行!
我一直这样做,以测试我的应用程序。例如:
dev.mysite.com到您的目录hostfile(在Mac中为 / etc / hosts )。Google App Console,您应该一切顺利。dev.mysite.com:80* 启动站点,驱动器选择器现在应该可以正常运行。*注意:您必须在端口80上服务。Google根本无法在端口上使用它,因此,当您转到自己的站点时,该地址必须dev.mysite.com没有端口。
| 归档时间: |
|
| 查看次数: |
1782 次 |
| 最近记录: |