`
默糖糖
  • 浏览: 14808 次
  • 性别: Icon_minigender_2
  • 来自: 西安
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

微博直接登录

阅读更多
对于新浪微博:
  方式一:通过直接登录(用户名/密码)方式
   1.在项目中导入 weibo4j.http ,weibo4j.org.json,weibo4j.util
   2.方法调用:
     2.1 查询用户详细信息
     查询条件:
          userId:-新浪微博帐号
          password:-密码
  调用方法:weibo4j.Weibo.getAuthenticatedUser();  
      返回对象:weibo4j.User
  Dome:weibo4j.action.WebAction.Authorization()
     2.2 关注对象的最新动态
          查询条件:
                 String userId:-新浪微博帐号  
String  password:-密码
   调用方法:weibo4j.Weibo.getHomeTimeline();   
   返回对象:List<weibo4j.Status>
  Dome:weibo4j.action.WebAction.getStatus();
2.3 我的收藏展示
           查询条件:
          String  userId:-新浪微博帐号  
  String  password:-密码
调用方法:weibo4j.Weibo.getFavorites();   
返回对象:List<weibo4j.Status>
Dome:weibo4j.action.WebAction.getFavorites();   
     2.4 用户关注的对象
           查询条件:
           String userId:-新浪微博帐号  
   String password:-密码
调用方法:weibo4j.Weibo.getFriendsStatuses();   
返回对象:List<weibo4j.User>
            Dome:weibo4j.action.WebAction.getFriendsStatuses();   
     2.5 粉丝查询
             查询条件:
           String userId:-新浪微博帐号  
   String password:-密码
调用方法:weibo4j.Weibo.getFollowersStatuses();   
返回对象:List<weibo4j.User>
Dome:weibo4j.action.WebAction.getFollowersStatuses()
2.6 提到我的
查询条件:
           String userId:-新浪微博帐号  
   String password:-密码
调用方法:weibo4j.Weibo.getMentions();   
返回对象:List<weibo4j.Status>
Dome:weibo4j.action.WebAction.getMentions()
      2.7 获取所有私信
         查询条件:
           String userId:-新浪微博帐号  
   String password:-密码
调用方法:weibo4j.Weibo.getDirectMessages();   
返回对象:List<weibo4j.DirectMessage>
Dome:weibo4j.action.WebAction.getDirectMessage()
  2.8 发送私信
             登录条件:
            String userId:-新浪微博帐号  
    String password:-密码
String id:收信人在新浪weibo的id
String text:私信内容
  调用方法:weibo4j.Weibo.sendDirectMessages(id,text);
              Dome:weibo4j.action.WebAction.sendDirectMessage()  
 
具体的Demo见weibo4j.jar
注意:
1. 要修改weibo4j.Weibo 的
public static String CONSUMER_KEY = "App Key";
public static String CONSUMER_SECRET=”App Secrect”;
2.要修改weibo4j.Configuration 的65 ,67行 修改成自己的 App key 和 App  secret
  以下是我的代码:
package weibo4j.action;

import java.util.List;

import weibo4j.DirectMessage;
import weibo4j.Status;
import weibo4j.User;
import weibo4j.Weibo;
import weibo4j.WeiboException;

public class WebAction {
private String name;
private String password;
private String userId;
private String passwd;
private User user;
private String id;
private String text; //私信内容
private Boolean isOauth=false;
private List<Status> statuses;
private List<User> allfriends;
private List<DirectMessage> messages;
/**
* 发送私信
* @return
*/
public String sendDirectMessage(){
try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  weibo.sendDirectMessage(id, text);
  userId = this.getName();
  passwd = this.getPassword();
  System.out.println(userId+"_1");
  System.out.println(passwd+"_1");
  return getDirectMessages();
} catch (Exception e) {
e.printStackTrace();
}
return "fail";
}
/**
* 获取所有的私信
* @return
*/
public String getDirectMessages(){
try {
System.out.println("userId:-"+userId);
System.out.println("password:-"+passwd);
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  messages = weibo.getDirectMessages();
  if(null == messages){
  System.out.println("提到我的messages.size = 0");
  }
  else{
  System.out.println("提到我的messages.size = "+messages.size());
  }
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
}
/**
* 提到我的
* @return
*/
public String getMentions(){
try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  statuses = weibo.getMentions();
  if(null == statuses){
  System.out.println("提到我的statuses.size = 0");
  }
  else{
  System.out.println("提到我的statuses.size = "+statuses.size());
  }
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
}
/**
* 查询粉丝
* @return
*/
public String getFollowersStatus(){
try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  allfriends = weibo.getFollowersStatuses();
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
}
/**
* 用户关注
* @return
*/
   public String getFriendsStatuses(){
   try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  allfriends = weibo.getFriendsStatuses();
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
   }
/**
*我的收藏展示
*/
public String getFavorites(){
try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  statuses = weibo.getFavorites();
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
}

/**
* 关注对象的最新动态
* @return
*/
public String getStatus(){
  try {
  Weibo weibo=new Weibo();
  weibo.setUserId(this.getUserId());
  weibo.setPassword(this.getPasswd());
  statuses = weibo.getHomeTimeline();
  return "success";
} catch (WeiboException e) {
e.printStackTrace();
}
return "fail";
}
/**
* 查询用户详细信息
* @return
*/
public String Authorization() {
System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
    System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
    Weibo weibo = new Weibo();
    String[] arrs = new String[]{this.getUserId(),this.getPasswd()};
    if(isOauth){
    //Oauth验证方式:arrs[0]:访问token;arrs[1]:访问的密匙
    weibo.setToken(arrs[0], arrs[1]);
    }else{
    //用户登录方式
    weibo.setUserId(arrs[0]);
    weibo.setPassword(arrs[1]);
    try {
user = weibo.getAuthenticatedUser();
if(user != null){
return "success";
}else{
return "fail";
}
} catch (WeiboException e) {
e.printStackTrace();
}
      }
return "fail";
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public Boolean getIsOauth() {
return isOauth;
}

public void setIsOauth(Boolean isOauth) {
this.isOauth = isOauth;
}
public List<Status> getStatuses() {
return statuses;
}
public void setStatuses(List<Status> statuses) {
this.statuses = statuses;
}
public List<User> getAllfriends() {
return allfriends;
}
public void setAllfriends(List<User> allfriends) {
this.allfriends = allfriends;
}
public List<DirectMessage> getMessages() {
return messages;
}
public void setMessages(List<DirectMessage> messages) {
this.messages = messages;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}





}
分享到:
评论

相关推荐

    科汛CMS v8新浪微博登录插件 v1.1

    需要出现新浪微博登录的地方 加入如下代码: 此图片大小121*24或则此图片大小16*16当然 你也可以直接用文字连接新浪微博登录更多疑问请访问webx32.com,此插件由风(QQ4240249)制作,此插件仅测试科讯v8 免费版以及...

    实现新浪微博自动登录授权

    模拟新浪微博桌面客户端应用自动授权功能,为写应用打开第一步锁。自动获取CODE并授权于应用。

    科讯CMS v8新浪微博登录插件 v1.1.rar

    当然 你也可以直接用文字连接新浪微博登录 更多疑问请访问webx32.com,此插件由风(QQ4240249)制作,此插件仅测试科讯v8 免费版以及eshop版,其他版本并未测试!插件说明地址:http://www.webx32.com/?p=222 ...

    java登录新浪微博

    修改用户名和密码可以直接登录新浪微博。这么没有提供相关的jar。

    织梦V5.7-QQ微博淘宝登录GBK-加强完整

    3、第一次执行oauth/member/oauth_add_openid.php文件(就是直接运行,如http://www.abcd.com/oauth/member/oauth_add_openid.php),执行后删除此文件。 4、模板添加QQ登录按钮链接,请自行放置位置: 注册模板页...

    微博登录功能

    绝对可用的ecshop微博登录插件,直接下载后台安装,更改申请到的微博id和key(http://open.weibo.com/index.php)

    第三方微博登录

    第三方微博登录,OAuth 实例代码,里面很详细,直接拿来改就可以了..

    java 微博登入

    java 微博登入 maven项目 ssm框架 直接运行!注释非常详细了!

    微博模拟登陆(python3-2018年8月最新版本)

    也是自己学习python,网上模拟登陆的代码很多都是py2.7版本,最新的py3+版本更改了函数名也摒弃了2.x版本的一些方法,现在根据修改,成功实现py3微博模拟登陆,并加了自己...里面更改自己的登录名和密码,即可直接运行

    微博抓取用户ID,可直接以用户身份做操作

    利用这个程式以登录微博并模拟操作,我在这里写了获取微博ID。当然你也可以获取其他东西。感谢使用。该文件主要提供思路

    记事狗微博系统2.5源码PHP

    4、整合sina微博,支持新浪微博用户在本站直接登录、绑定本站账户; 5、用户绑定新浪微博后,可将本站微博同步发到新浪微博,实现推广; 6、支持用户编辑微博内容,限定一定时间并且无评论和回复的情况下; 7、...

    StatusNet开源微博 v1.1.1 多国语言版.zip

    StatusNet的功能还是比较丰富的,除了微博必备的所有功能外,StatusNet支持自选背景和自选缩链服务,并且支持用户使用OpenID或者Facebook账户直接登录。同时支持通过Jabber/GTalk发布帖子和接受更新。并且支持大量的...

    新浪微博连接工具Xweibo插件for Discuz!X1.5 V1.0.1 GBK UTF8

    新浪微博帐号直接登录网站 1.新浪微博用户无需二次注册即可登陆网站 2.站长可与新浪微博共同分享所有新浪微博内容 从新浪微博轻松获得流量 1.多种方式将内容推送到新浪微博 2.网站从推送内容中获得用户流量 3.推送...

    StatusNet开源微博PHP版 v0.9.7.gz

    StatusNet的功能还是比较丰富的,除了微博必备的所有功能外,StatusNet支持自选背景和自选缩链服务,并且支持用户使用OpenID或者Facebook账户直接登录。同时支持通过Jabber/GTalk发布帖子和接受更新。并且支持大量的...

    cordova 微信、微博、QQ三方登录、分享插件

    直接通过 cordova 命令添加微信、微博、QQ三方登录、分享插件,真实项目测试通过。

    新浪微博下载工具v5.0免费绿色版

    新浪微博下载工具是一款使用简单的新浪微博图片下载工具,该软件体积小巧,使用简单,用户只需要扫码登录软件或将微博地址复制入软件,就可以直接下载微博上任何账号上的图片,非常实用,需要的朋友欢迎前来下载使用...

    记事狗微博系统 v3.0.0 beta GBK Build 20110916.rar

    记事狗微博系统是一套业界领先的开源PHP微博程序,其支持Web、手机、短信、QQ机器人等多种方式发布内容,并可通过QQ即时通知、站外调用、同步到新浪微博、腾讯微博(可使用微博账户登录、注册绑定)等传播内容,是...

    java微博模拟登陆+图片上传微博图床

    使用springboot做基础框架,提供简单页面做图片上传,接口直接模拟微博登陆,上传完成后返回图片保存链接 public String getSinaCookies() { String base64name = Base64Utils.encodeToString(username.getBytes()...

    新浪微博开放平台php sdk

    用于新浪微博开放平台的PHP SDK. 内含能直接使用的DEMO. SAE(Sina App Engine, http://sae.sina.com.cn )已内置SDK,不需要下载,使用前需要手工调用 require_once('saetv2.ex.class.php');

    新浪微博不用网页授权发微薄

    Android上开发新浪微博分享功能,授权时不使用webview以及浏览器,直接在EditText里输入登录名和密码即可授权发微博(带图片及不带图片)

Global site tag (gtag.js) - Google Analytics