zoukankan      html  css  js  c++  java
  • 怎么得到新浪每条微博详细页地址?

    怎么得到新浪每条微博详细页地址?

    :userid/statuses/:id

    跳转到单条微博的Web地址。可以通过此url跳转到微博对应的Web网页。

    URL

    http://api.t.sina.com.cn/:userid/statuses/:id.(json|xml)

    支持格式

    XML/JSON

    HTTP请求方式

    GET

    是否需要登录

    false
    关于授权机制,参见授权机制声明

    请求数限制

    false
    关于请求数限制,参见接口访问权限说明

    请求参数

     必选类型及范围说明
    source true string 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。(采用OAuth授权方式不需要此参数)
    :userid true int64 微博消息的发布者ID
    :id true int64 微博消息的ID

    注意事项

    URL示例:http://api.t.sina.com.cn/1773020834/statuses/456?source=appkey

    调用示例

    XML
    curl -u "username:password" "http://api.t.sina.com.cn/:userid/statuses/:id?source=appkey"
    JSON
    curl -u "username:password" "http://api.t.sina.com.cn/:userid/statuses/:id?source=appkey"

    返回结果

    跳转到该微博的web页

    其他

    Java示例

    请从 微博SDK开发包下载 下载Java SDK
    代码示意如下:

    package weibo4j.examples;
    
    import java.util.List;
    import weibo4j.Status;
    import weibo4j.Weibo;
    
    
    public class ForwardStatus {
    
    	/**
    	 * 根据微博ID和用户ID跳转到单条微博页面
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
        	System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
        	try {
    			List<Status> list = getWeibo(true,args).getUserTimeline();
    			if(list.size() > 0) {
    			//args[2]:用户的id
    			String url = "http://api.t.sina.com.cn/"+args[2]+"/statuses/"+list.get(0).getId();
    			//打开单条微博信息页面
    			Runtime.getRuntime().exec("cmd /c start "+url);
    			}
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    
    	private static Weibo getWeibo(boolean isOauth,String[] args) {
    		Weibo weibo = new Weibo();
    		if(isOauth) {//oauth验证方式 args[0]:访问的token;args[1]:访问的密匙
    			weibo.setToken(args[0], args[1]);
    		}else {//用户登录方式
        		weibo.setUserId(args[0]);//用户名/ID
       		weibo.setPassword(args[1]);//密码		
    		}
    		return weibo;
    	}
    }
    

    PHP示例

    请从 微博SDK开发包下载 处下载PHP SDK(支持OAuth验证之版本)
    代码示例如下:

    //user/statuses/id
    $c = new WeiboClient( WB_AKEY , 
                          WB_SKEY , 
                          $_SESSION['last_key']['oauth_token'] , 
                          $_SESSION['last_key']['oauth_token_secret']  );
    
    $msg = $c->user_timeline();
    if ($msg === false || $msg === null){
    	echo "Error occured";
    	return false;
    } 
    if (count($msg)> 0){
    	$uid = 'User ID';
    	$sid = $msg[0]['id'];
    	$msg  = $c->get_comments_by_sid($sid);
    	if ($msg === false || $msg === null){
    		echo "Error occured";
    		return false;
    	}
    	$url = "http://api.t.sina.com.cn/".$uid."/statuses/".$sid;
    	//To achieve redirection, header() must be called before any actual output is sent, such as HTML tags
    	header( 'Location:'.$url );
    }
    
    黑苹果驱动之家 http://it360.org.cn
  • 相关阅读:
    认识jeecms开源项目
    初识eclipse及配置相关
    Html5 Video的使用
    实现渐变色案例
    区域路由的注册机制
    MVC特性路由的提供机制
    再谈async与await
    同步 VS 异步
    C#多线程中的异常处理
    C#多线程基础
  • 原文地址:https://www.cnblogs.com/rickyz/p/2125159.html
Copyright © 2011-2022 走看看