Google API OAuth for Drive API无效。获取错误:origin_mismatch

时间:2013-10-10 05:46:12

标签: oauth google-drive-api google-oauth google-drive-realtime-api

我正在尝试运行Google云端硬盘实时API的快速入门代码。 我相信我做的一切都是正确的。但我得到了

Error: origin_mismatch

Request Details

    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=oauth2relay601571239
    origin=http://127.0.0.1
    state=811328575|0.818765953
    display=page
    client_id=XXXXXXXXXX

2 个答案:

答案 0 :(得分:9)

您没有详细介绍您的应用程序架构,因此我只能提出一般性答案。 OAuth限制可以引用哪些URL。允许的URL列表在https://code.google.com/apis/console的API控制台中配置。该网址非常繁琐,因此请务必完全按照地址栏中显示的方式输入。

截至2013年10月,您无法使用localhost。你有两个选择。

  1. 将127.0.0.1 = mydevserver.example.com编辑到/ etc / hosts
  2. 使用url shortener(例如goo.gl)为localhost创建别名
  3. 但是,我相信现在可以配置localhost了 谷歌API控制台。

答案 1 :(得分:1)

我遇到了与origin_mismatch相同的问题。

来自:Create a client ID section localhost应该在经过小规模测试后为我工作和工作。

Google API中的原点我有:http://localhost
浏览器中地址栏的URL:localhost

从一开始这个配置不起作用,但是在我尝试写入地址栏后:127.0.0.1-> enter-> origin_mismatch,它是正确的,然后再写下localhost,现在它已经是#s的工作原理。

在Firefox 39和Google Chrome 37.0.2062.120 Ubuntu 12.04(281580)(64位)中测试过相同的行为。