1

我正在使用Hello.js访问/发布社交网络数据。Hello.JS 标准化了公共 API 的路径和响应。这个问题特别是关于发布到 twitter。

twitter 演示页面上,我使用按钮登录并在 firebug 控制台中尝试了 hello.api。我能够得到回应

>>> hello.api('/me',function(resp) {console.log(resp);})

并且能够在控制台中看到响应对象。虽然 '/me/share' 似乎不起作用,但这里是 cmd

>>> hello.api('/me/share','post',{message:'Hi to all'},
  function(resp) {
    console.log(resp);
  })

对于上述请求,响应是

{"errors":[{"code":170,"message":"Missing required parameter: status"}]}

而我在 Post 数据中看到

status=Hi%20to%20all

和参数是

access_token    1690287512-eB8IocvynmqSmnMlpxoh0VBJxWhff86sYHTBqKo:DRT4zO8pTbMjY8yblG9RtSqRMD3oKEyP8kAGG6cpo9w@eQuyZuECKWPiv3D7E4qdg
path    https://api.twitter.com/1.1/statuses/update.json?include_entities=1

Hello.js 使用auth-server进行服务器端 OAuth 身份验证和授权。并且 auth-server 是node-oauth-shim 的实现

任何提示可能出了什么问题?好吧,这可能是一个非常模糊的问题。

所以我的第二个问题要非常具体。在 node-oauth-shim中,代理用于请求 twiiter。在proxy.js 中,如果有人可以帮助我调试它是否将数据发送到 twitter 是否有请求。我可以在代码中的某处记录正在发送到 Twitter 的请求(带有数据)吗?

4

1 回答 1

0

这是 Twitter 的一个实现错误,已由 HelloJS twitter 模块将 POST BODY 移动到 URL 中修复。例如

https://api.twitter.com/1.1/statuses/update.json?include_entities=1&status=Yo+Its+A+Status

演示位于http://adodson.com/hello.js/#helloapi

于 2013-11-04T01:00:32.310 回答