首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >监视400错误

监视400错误
EN

Stack Overflow用户
提问于 2014-08-20 21:29:36
回答 1查看 795关注 0票数 2

我正在使用OAuth2 gem ( rails)实现google。我没有使用客户端库,因为我也在集成其他API,所以我试图使所有这些调用尽可能模块化。我在这个请求上遇到了麻烦:POST https://www.googleapis.com/drive/v2/changes/watch

我一直在犯这个错误:

代码语言:javascript
复制
{"errors"=>[{"domain"=>"global", "reason"=>"required", "message"=>"entity.resource"}], 
"code"=>400, "message"=>"entity.resource"}: { "error": { "errors": [ { "domain": 
"global", "reason": "required", "message": "entity.resource" } ], "code": 400, 
"message": "entity.resource" } } 

这不是很有用。可能不是谷歌。它可能是OAuth2,但我不这么认为,因为调试器在建立连接后就会得到响应。嗯,现在,我什么都不知道,所以任何帮助都是值得感谢的。这家伙和我有完全相同的错误代码,也有同样的结论。

总之,相关的代码部分:

首先,我传递给OAuth2::AccessToken的post方法的参数(我需要10个以上的rep来发布另一个链接,但这里是文档方法)(您可以单击request方法来查看如何处理params )

代码语言:javascript
复制
base_url = request.protocol + request.host_with_port
channel_id = (0...50).map { ('a'..'z').to_a[rand(26)] }.join
body_post = {:id => channel_id,:type => 'web_hook',:address => base_url + "/googledrive/webhook"}
headers = {'Content-Type' => 'application/json'}
response = makeApiCall(token,"google_drive","/changes/watch","post",{},body_post,headers)

所有这些都是用适当的请求主体和调用的头构建我的请求。

下面是来自makeApiCall的相关部分(在行token.post是提出请求的地方,也是请求中断的地方)

代码语言:javascript
复制
params = {"oauth_consumer_key" => ENV[key], "access_token" => token.token}.merge(params)
#body = Rack::Utils.build_query(body)
opts = {
    :params => params,
    :body => body,
    :headers => headers
}

if(method=="get")
    response = token.get(base + path,:opts => opts)
elsif(method=="post")
    debugger 
    response = token.post(base + path,:opts => opts)
end

这是我的第一个或第二个帖子,所以如果我搞砸了,请原谅我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-23 17:29:20

好吧,在挣扎了这么久之后,我明白了为什么它不起作用了。我忘了这么做:

代码语言:javascript
复制
JSON.generate(body_post)

所以我的身体实际上是在申请表/json表格中。

此外,这一行:

代码语言:javascript
复制
response = token.post(base + path,:opts => opts)

应该是这样:

代码语言:javascript
复制
response = token.post(base + path,opts)

仅仅因为我没有分配opts键,而是分配要传递的变量。我真傻。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25414767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档