新浪微博api的一个坑

调用 http://open.weibo.com/wiki/OAuth2/access_token这个接口

看文档是

HTTP请求方式
POST
请求参数
...省略....

 

用node现写个个https的client 模拟post数据过去

var options = {
hostname: 'api.weibo.com',
port: 80,
path: api,
method: 'POST'
};

 

req = http.request(options , function(){...})

req.write(data)

req.end()

 

 

第一个报错 socket hang up

连蒙带搜 发现是需要有个设置 port : 443

好吧 加上 继续...

第二个报错 STATUS: 411 

检查发现是headers里没传content-length

好吧 加上 继续...

    var options = {
      hostname: 'api.weibo.com',
      path:  api,
      method: 'POST'
    , port: 443
    ,headers: { 'Content-Length': data.length || 0}
    };

  

 

然后调试过去 微博终于返回了 但是个失败信息

'{"error":"invalid_request","error_code":21323,"request":"/2/oauth2/access_token","error_uri":"/2/oauth2/access_token","error_description":"miss client id or secret"}' 

返回检查了自己的代码也未解决,小睡了会后继续google 有人说 微博是只看get参数的 也是就是说post过去的不认.... 不认你文档上写毛

HTTP请求方式

POST

  啊 啊 啊

 

 

path: api 修改为 path:  api+ '?' + data ,参数get也传过去,,,终于过去了.....

转载于:https://www.cnblogs.com/vaal-water/archive/2013/02/19/2917360.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值