【你不知道的Spring,Android】- 【模仿腾讯微博api】

3 篇文章 0 订阅
1 篇文章 0 订阅

一:

tx weibo api如下

url

http://open.t.qq.com/api/t/show
https://open.t.qq.com/api/t/show (oauth2.0使用)

支持验证方式

oauth1.0oauth2.0openid&openkey

格式

xml,json

http请求方式

get

是否需要鉴权

true

请求数限制

true, 查看API调用权限说明

接口测试

点击这里测试

 

做简单模仿:

url

http://192.168.20.32:8080/springServer/t/show

支持验证方式

格式

json

http请求方式

get/post

是否需要鉴权

 

 

 

 

 

二:Server

@Controller
@RequestMapping(value="/t")
public class Server {

	@RequestMapping(value="/show")
	@ResponseBody
	public Map<String, Object> show(){
		HashMap<String, Object> map = new HashMap<String, Object>();
		try {
			
			map.put("errcode", 0);
			map.put("msg", "ok");
			HashMap<String, Object> data = new HashMap<String, Object>();
			HashMap<String, Object> user = new HashMap<String, Object>();
			user.put("name", "xxx");
			data.put("user", user);
			map.put("data", data);
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		return map;
	}
}


 

三:androidClient

 

  try {
        	HttpClient client = new DefaultHttpClient();

			HttpPost post = new HttpPost();
			post.setURI(new URI("http://192.168.20.32:8080/springServer/t/show"));
			List<NameValuePair> nvps = new ArrayList<NameValuePair>();
			nvps.add(new BasicNameValuePair("name", "你好"));
			nvps.add(new BasicNameValuePair("age", "34"));
			post.getParams().setParameter(HTTP.CONTENT_ENCODING, HTTP.UTF_8);
			post.getParams().setParameter(HTTP.CHARSET_PARAM, HTTP.UTF_8);
			post.getParams().setParameter(HTTP.DEFAULT_CONTENT_CHARSET, HTTP.UTF_8);
			post.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
			
			HttpResponse response = client.execute(post);

			System.out.println("状态:"+response.getStatusLine());
			
			HttpEntity httpEntity = response.getEntity();
			String o_str = EntityUtils.toString(httpEntity);
			System.out.println("原始返回值:"+o_str);
			JSONObject obj = new JSONObject(o_str);
   
                             System.out.println(obj);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}


 

四:结果

08-24 16:34:03.609: I/System.out(14097): [socket][/192.168.30.174:36907]
08-24 16:34:03.609: I/System.out(14097): setSoSndTimeout:0
08-24 16:34:03.648: I/System.out(14097): 状态:HTTP/1.1 200 OK
08-24 16:34:03.656: I/System.out(14097): 原始返回值:{"data":{"user":{"name":"xxx"}},"msg":"ok","errcode":0}
08-24 16:34:03.664: I/System.out(14097): {"data":{"user":{"name":"xxx"}},"msg":"ok","errcode":0}

 

五:下载代码

点我下载

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值