调用腾讯微博开放平台出现的错误和解决办法

摘要:
腾讯还需要保存:openid和opkey。当我们发送微博时,我们需要使用两个参数。


 response{"data":null,"detailerrinfo":{"accesstoken":"","apiname":"weibo.user.info","appkey":"801306361","clientip":"110.184.110.97","cmd":0,"proctime":0,"ret1":3,"ret2":3,"ret3":101,"ret4":2502133002,"timestamp":1372144511},"errcode":101,"msg":"missing parameter","ret":3,"seqid":5893315800140711293}


从信息可以看出:缺少必要的参数。向oAuthV2对象中加入参数——

oAuthV2.setOpenid("opnid");   //opnid:授权成功后,返回的oAuthV2里面用 getOpenid() 方法获取

oAuthV2.setOpenkey("opkey");   //getOpenkey() 获得


还有加上

oAuth.setClientId(app_key);   //申请的app——key

oAuth.setClientSecret(clientSecret);  //注册时候获得

在第一次授权后,我们把

oAuthV2保存在了SharedPreferences里面,应该少保存了2个数据:openid,和 opkey,和新浪微博的有些不一样,新浪的只需要保存token,和过期时间。


腾讯的还需要保存:openid,和 opkey,在我们发送微博的时候需要用到2个参数。

 

publicstaticvoid saveDate(Context context, OAuthV2 token) { //保存第一次授权后,获取的OAuthV2,注意红色部分,必须保存

preferences = context

.getSharedPreferences("tenxun", Context.MODE_PRIVATE);

Editor editor = preferences.edit();

editor.putString("token", token.getAccessToken());

editor.putString("expiresTime", token.getExpiresIn());

editor.putString("openid", token.getOpenid()); 

editor.putString("opkey", token.getOpenkey());

editor.commit();

 

}

public static OAuthV2 getDate(Context context)    //获取保存的oAuthV2,注意红色部分

{

OAuthV2 oAuthV2=new OAuthV2();

preferences = context

.getSharedPreferences("tenxun", Context.MODE_PRIVATE);

 

oAuthV2.setAccessToken(preferences.getString("token",""));

oAuthV2.setExpiresIn(preferences.getString("expiresTime",null));

oAuthV2.setOpenid(preferences.getString("openid", null));

oAuthV2.setOpenkey(preferences.getString("opkey", null));

return oAuthV2;

}




免责声明:内容来源于网络,仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux基础(15)多线程编程各种WAF识别以及杀毒软件进程下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JSSDK实现微信自定义分享---java 后端获取签名信息

一、首先说下关于微信Access_token的问题,微信Access_token分为2中: 1.授权token获取方式: 这种token需要code值(如何获取code值查看官方文档) 1 "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + appId + "&secret="...

springboot结合jwt实现基于restful接口的身份认证

基于restful接口的身份认证,可以采用jwt的方式实现,想了解jwt,可以查询相关资料,这里不做介绍~ 下面直接看如何实现 1、首先添加jwt的jar包,pom.xml中添加依赖包: <dependency> <groupId>io.jsonwebtoken</groupId>...

docker 安装jumpserver

#docker 安装mkdir /etc/dockerecho "{    "registry-mirrors" : [    "https://registry.docker-cn.com",    "https://docker.mirrors.ustc.edu.cn",    "http://hub-mirror.c.163.com",    "ht...

微信公众平台获取用户openid

首先需要一个域名,如花生壳域名,然后在微信公众平台配置,注意,正式环境下必须要备案好了的域名,测试环境下没有关系,先公众号功能设置:》接口权限中的网页授权获取用户基本信息》注册一个测试者账号,进行设置,也要修改网页授权获取用户基本信息 public ActionResult Index(string id, string code, string st...

Token之关于基础概念(一)

阔别了一阵,再次提笔,有些感慨。 聊聊Token吧,以前工作中总是遇到。 首先明确什么是token? 一些关键标签:服务端签发的一个字符串,客户端的请求令牌,用户第一次使用用户名密码登录后生成,在token的有效期内使用token登录无需用户名密码 明确之后我们来聊聊,token的生成及请求过程: 1、客户端带上用户名密码请求登录(前端校验通过) 2、服务...

Android权限禁止及友好提示用户开通必要权限

Android权限 Android安全架构规定:默认情况下,任何应用都没有权限执行对其他应用、操作系统或用户有不利影响的任何操作。这包括读写用户的私有数据(联系人,短信,相册,位置)、读写其他应用的文件、执行网络访问、使设备保持唤醒状态等等。 如果是一些正常的权限(非高危权限),比如网络访问等在应用清单文件(AndroidManifest.xml)中配置,...