http中post和get的区别

简介:

本地采用post+http封装接口,提供对外使用:


post和get其实不影响,我们在开发接口时候就按照本地接口来开发即可


http中post和get的区别:

get一般只是查询数据,参数跟在请求地址后面,用问号隔开;参数最多为1024字节。

post一般是修改等,参数在请求体中;参数量更大。


在接口开发中,没有区别,都是获取参数,然后返回数据。


post和get就相当于是ajax的参数传递的区别。


参考:

http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html


接口开发:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/**
      * 获取用户信息
     
      * @param appid
      *            第三方网站唯一标识
     
      * @param access_token
      *            联合中心的全局唯一票据
     
      * @param openid
      *            由联合中心颁发的当前用户的用户标识
     
      * @param start
      *            预备填充的用户信息, JSON数据
     
      * @param size
      *            预备填充的用户信息, JSON数据
     
      * @return JSON 数据
     
      */
     @RequestMapping (value =  "/{appid}/userInfo" , method = RequestMethod.GET, produces = {
             "application/json;charset=UTF-8"  })
     @ResponseBody
     public  String getUserInfo(HttpServletRequest request, HttpServletResponse response,
             @PathVariable ( "appid" ) String appid, String access_token, String openid, Integer start, Integer size)
             throws  Exception {
 
         String result =  null ;
         try  {
             result = userService.getUserInfo(appid, access_token, openid, start, size);
         catch  (Exception ex) {
             ex.printStackTrace();
         }
         if  (- 1  != result.indexOf( "errmsg" )) {
             result = AppErrorResult.setErrorResult(result);
         }
         return  result;
     }

接口文档:(调用)

获取用户详细信息进行其他信息查询

1. 当前用户为第三方网站自身用户,可以使用原有方式进行查询

2. 当前用户为非第三方网站自身用户或第三方用户信息由联合中心托管的情况下。需要向联合中心发起请求获取用户其他信息

3. 具体数据需要跟第三方网站协商确定

接口调用请求说明

HTTP请求方式:GET

http://activixxxx.com/jk_uca_t/appid/userInfo?access_token=accessToken& openid=openId

参数说明

参数名

是否必填

参数说明

appid

第三方网站唯一标识

access_token

联合中心的全局唯一票据

openid

由联合中心颁发的当前用户的openid

注:在联合中心鉴权时,会先做token检查,如果有误就返回错误码。比如token超时,则需要第三方网站重新获取token,获取token方式见获取access_token.

 

返回说明

正确返回如下JSON数据包

  { openid : OPENID,

name : name

   }

注:具体数据需要跟第三方网站协商确定

 

错误,返回错误码等信息,JSON数据包示例如下(该示例为appid无效错误)

{errorcode : 40013, errmsg : invalid appid}

错误码:

{"errorCode":40013,"errorMessage":"errmsg: invalid appid"}

{"errorCode":40014,"errorMessage":"errmsg: invalid access_token"}

{"errorCode":40017,"errorMessage":"errmsg: access_token timeout"}

{"errorCode":40018,"errorMessage":"errmsg: invalid access_token for appid"}

{"errorCode":40021,"errorMessage":"errmsg: invalid openid "}

{"errorCode":40022,"errorMessage":"errmsg: invalid account"}

 

Java调用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@Override
public  UcaResult queryUser(String  openId)  throws  Exception  
{
     //联合用户中心查询用户数据
      String  url =  "" ;
         try  {
             AddressMappingQuery  addressMappingQuery= new  AddressMappingQuery();
             addressMappingQuery.setKmsid( "ucaUrl" );
             List<AddressMapping> AddressMappings =  this .addressMappingManager.query(addressMappingQuery);
             url = AddressMappings.get( 0 ).getAddressMappingUrl();
         catch  (Exception e1) {
             e1.printStackTrace();
             throw  new  Exception( "服务器错误,获取第三方接口url失败" );
         }
         url = url +  "/userInfo" ;
     HttpParameter httpParameter =  new  HttpParameter(); // 参数
     httpParameter.add( "openid" , openId);
     httpParameter.add( "access_token" , (String)GlobalSet.AccessTokenMap.get( "access_token" ));
     String resultStr = PostUtil.doGet(url, httpParameter,  "UTF-8" );
     Gson gson= new  GsonBuilder().setPrettyPrinting().create();
     UcaResult result=gson.fromJson(resultStr, UcaResult. class );
     return  result;
}



      本文转自建波李 51CTO博客,原文链接:http://blog.51cto.com/jianboli/1898141,如需转载请自行联系原作者




相关文章
|
1天前
|
安全 网络安全 数据安全/隐私保护
第六问:http和https区别与联系
HTTP 和 HTTPS 是现代网络通信中的两种重要协议。HTTP 是明文传输协议,无加密功能;HTTPS 在 HTTP 基础上加入 SSL/TLS 加密层,提供数据加密、身份验证和数据完整性保障。HTTP 适用于非敏感信息传输,如新闻网站;HTTPS 适用于在线支付、账户登录等需要保护用户数据的场景。
11 0
|
1月前
|
传感器 缓存 网络协议
CoAP 协议与 HTTP 协议的区别
CoAP(Constrained Application Protocol)协议是为资源受限的设备设计的轻量级协议,适用于物联网场景。相比HTTP,CoAP具有低功耗、低带宽占用和简单易实现的特点,支持多播通信和无连接的交互模式。
|
1月前
|
前端开发 JavaScript Java
如何捕获和处理HTTP GET请求的异常
如何捕获和处理HTTP GET请求的异常
|
1月前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
1月前
|
缓存 安全 API
http 的 get 和 post 区别 1000字
【10月更文挑战第27天】GET和POST方法各有特点,在实际应用中需要根据具体的业务需求和场景选择合适的请求方法,以确保数据的安全传输和正确处理。
|
1月前
|
网络协议 网络安全 API
Http和Socks的区别?
HTTP 和 SOCKS 协议各有其优势和应用场景。在选择使用哪种协议时,应根据具体需求和应用环境做出决定。HTTP 适用于 Web 服务相关的通信,而 SOCKS 则更适用于需要通用代理功能和复杂网络环境的场景。了解它们的区别和特点,有助于在不同的网络应用中做出最佳选择。
45 1
|
1月前
|
网络协议 API 数据格式
HTTP 和 TCP 协议的主要区别
【10月更文挑战第25天】HTTP 和 TCP 在网络通信中扮演着不同的角色,各自具有独特的功能和特点,它们相互配合,共同为实现网络应用的各种需求提供了基础支持。
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
zookeeper watch的定义如下:watch事件是一次性触发器,当watch监视的数据发生变化时,通知设置了该watch的client,即watcher。
941 0
|
Web App开发 存储 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
NoSuchObjectException(message:There is no database named cloudera_manager_metastore_canary_test_db_hive_hivemetastore_df61080e04cd7eb36c4336f71b5a8bc4) at org.
1082 0
|
Web App开发 前端开发 数据库