腾讯微博 sso发布微博 check sign error 问题的解决

来源:互联网 发布:美工主要做什么 编辑:程序博客网 时间:2024/06/05 20:08
最近在实现腾讯微博的sso登陆后发布微博接口,遇到了:check sign error的问题,在网上查了一下没有找到解决方案,只是有一个地儿说app key设置的有问题会报这个问题。我是按官方给的demo实现的,对照了半天也没发现自己哪儿有问题,但是当看到官方demo的WeiboAPI.java中的addweibo方法时发现了问题,

[java]
 view plaincopy
  1. public void addWeibo(Context context, String content,String format,double longitude,double latitude,int syncflag,int compatibleflag, HttpCallback mCallBack,  
  2.             Class<? extends BaseVO> mTargetClass, int resultType) {  
  3.         ReqParam mParam = new ReqParam();  
  4.         mParam.addParam("oauth_version""2.a");  
  5.         mParam.addParam("oauth_consumer_key",  
  6.         Util.getSharePersistent(context, "CLIENT_ID"));  
  7.         mParam.addParam("openid", Util.getSharePersistent(context, "OPEN_ID"));  
  8.         mParam.addParam("scope""all");  
  9.         mParam.addParam("format", format);// 返回数据的格式  
  10.         mParam.addParam("content", content);  
  11.         mParam.addParam("clientip", Util.getLocalIPAddress(context));     
  12.         if(longitude!=0d){  
  13.             mParam.addParam("longitude", longitude);      
  14.         }  
  15.         if(latitude!=0d){  
  16.             mParam.addParam("latitude", latitude);  
  17.         }  
  18.         mParam.addParam("syncflag", syncflag);  
  19.         mParam.addParam("compatibleflag", compatibleflag);  
  20.         startRequest(context,SERVER_URL_ADDWEIBO, mParam, mCallBack,  
  21.                 mTargetClass, BaseAPI.HTTPMETHOD_POST, resultType);  
  22.     }  

其中的
[java] view plaincopy
  1. mParam.addParam("oauth_consumer_key",   Util.getSharePersistent(context, "CLIENT_ID")); 
client_id字段在我登陆成功后保存时直接用的demo中的Util.saveSharePersistent(context, "CLIENT_ID", Util.getConfig().getProperty("APP_KEY"));我没有按照他把app_key存到文件中,因此当util去文件中找相应的参数的时候自然是找不到的,在登录的时候记得把自己的应用的key存到“CLIENT_ID”对应的值下,这样问题就解决了。
希望大家不要重走我的弯路,遇到问题,先从根源分析问题,看一眼源码能够更快找到问题的原因。

原创粉丝点击