|
|
|
@ -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); |
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
## 架构图 |
|
|
|
|
|
|
|
|
|
![架构图](https://images.gitee.com/uploads/images/2019/1227/145216_c9b45109_332975.png "sop3.png") |
|
|
|
@ -81,7 +129,7 @@ SOP封装了开放平台大部分功能包括:签名验证、统一异常处 |
|
|
|
|
|
|
|
|
|
## 分支说明 |
|
|
|
|
|
|
|
|
|
- master:发版分支(当前为3.0版本,2.x版本见`2.x`分支) |
|
|
|
|
- master:发版分支(当前为4.0版本) |
|
|
|
|
- develop:日常开发分支 |
|
|
|
|
- eureka:使用eureka注册中心 |
|
|
|
|
|
|
|
|
|