|  |  |  | @ -22,6 +22,54 @@ SOP封装了开放平台大部分功能包括:签名验证、统一异常处 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 以上情况都可以考虑使用SOP | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | ```java | 
			
		
	
		
			
				
					|  |  |  |  | // 加一个注解即可 | 
			
		
	
		
			
				
					|  |  |  |  | @Open("story.get") | 
			
		
	
		
			
				
					|  |  |  |  | @RequestMapping("/get") | 
			
		
	
		
			
				
					|  |  |  |  | public StoryResult get() { | 
			
		
	
		
			
				
					|  |  |  |  |     StoryResult result = new StoryResult(); | 
			
		
	
		
			
				
					|  |  |  |  |     result.setId(1L); | 
			
		
	
		
			
				
					|  |  |  |  |     result.setName("海底小纵队(原生)"); | 
			
		
	
		
			
				
					|  |  |  |  |     return result; | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | ``` | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 调用: | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | ```java | 
			
		
	
		
			
				
					|  |  |  |  | // 公共请求参数 | 
			
		
	
		
			
				
					|  |  |  |  | Map<String, String> params = new HashMap<String, String>(); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("app_id", appId); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("method", "story.get"); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("format", "json"); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("charset", "utf-8"); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("sign_type", "RSA2"); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("timestamp", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); | 
			
		
	
		
			
				
					|  |  |  |  | params.put("version", "1.0"); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | // 业务参数 | 
			
		
	
		
			
				
					|  |  |  |  | Map<String, String> bizContent = new HashMap<>(); | 
			
		
	
		
			
				
					|  |  |  |  | bizContent.put("id", "1"); | 
			
		
	
		
			
				
					|  |  |  |  | bizContent.put("name", "葫芦娃"); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | params.put("biz_content", JSON.toJSONString(bizContent)); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("----------- 请求信息 -----------"); | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("请求参数:" + buildParamQuery(params)); | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("商户秘钥:" + privateKey); | 
			
		
	
		
			
				
					|  |  |  |  | String content = AlipaySignature.getSignContent(params); | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("待签名内容:" + content); | 
			
		
	
		
			
				
					|  |  |  |  | String sign = AlipaySignature.rsa256Sign(content, privateKey, "utf-8"); | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("签名(sign):" + sign); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | params.put("sign", sign); | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("URL参数:" + buildUrlQuery(params)); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println("----------- 返回结果 -----------"); | 
			
		
	
		
			
				
					|  |  |  |  | String responseData = get(url, params);// 发送请求 | 
			
		
	
		
			
				
					|  |  |  |  | System.out.println(responseData); | 
			
		
	
		
			
				
					|  |  |  |  | ``` | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | ## 架构图 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |  | 
			
		
	
	
		
			
				
					|  |  |  | @ -81,7 +129,7 @@ SOP封装了开放平台大部分功能包括:签名验证、统一异常处 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | ## 分支说明 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | - master:发版分支(当前为3.0版本,2.x版本见`2.x`分支) | 
			
		
	
		
			
				
					|  |  |  |  | - master:发版分支(当前为4.0版本) | 
			
		
	
		
			
				
					|  |  |  |  | - develop:日常开发分支 | 
			
		
	
		
			
				
					|  |  |  |  | - eureka:使用eureka注册中心 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |