Просмотр исходного кода

更改Authorization为AuthorizationToken,阿里云OSS图片服务签名回调

change 4 лет назад
Родитель
Сommit
131f411b70

+ 2 - 2
zhongzheng-admin/src/main/java/com/zhongzheng/controller/alioss/OssController.java

@@ -44,8 +44,8 @@ public class OssController {
 
     @ApiOperation("回调")
     @PostMapping("/callback")
-    public ResultBean callback(@RequestBody Map<String, Object> map) {
-        ResultBean ossCallbackResult = ossService.callback(map);
+    public ResultBean callback(HttpServletRequest request) {
+        ResultBean ossCallbackResult = ossService.callback(request);
         log.info("oss成功的回调:{}",ossCallbackResult);
         return ossCallbackResult;
     }

+ 1 - 1
zhongzheng-admin/src/main/resources/application-dev.yml

@@ -81,7 +81,7 @@ aliyun:
     oss:
         endpoint: testzhongzheng.oss-cn-beijing.aliyuncs.com # oss对外服务的访问域名
         accessKeyId: LTAI4FeyKgAY6A1dPfmsaMCg  # 访问身份验证中用到用户标识
-        accessKeySecret: 111 # 用户用于加密签名字符串和oss用来验证签名字符串的密钥
+        accessKeySecret: ZrLRsqLw2NzHCIszEzwZWs55eVHYwM # 用户用于加密签名字符串和oss用来验证签名字符串的密钥
         bucketName: testzhongzheng # oss的存储空间
         policy:
             expire: 30 # 签名有效期(S)

+ 1 - 1
zhongzheng-admin/src/main/resources/application-prod.yml

@@ -81,7 +81,7 @@ aliyun:
     oss:
         endpoint: testzhongzheng.oss-cn-beijing.aliyuncs.com # oss对外服务的访问域名
         accessKeyId: LTAI4FeyKgAY6A1dPfmsaMCg  # 访问身份验证中用到用户标识
-        accessKeySecret: 111 # 用户用于加密签名字符串和oss用来验证签名字符串的密钥
+        accessKeySecret: ZrLRsqLw2NzHCIszEzwZWs55eVHYwM # 用户用于加密签名字符串和oss用来验证签名字符串的密钥
         bucketName: testzhongzheng # oss的存储空间
         policy:
             expire: 30 # 签名有效期(S)

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/alioss/service/OssService.java

@@ -10,5 +10,5 @@ import java.util.Map;
 public interface OssService {
     ResultBean getPolicy();
 
-    ResultBean callback(Map<String, Object> map);
+    ResultBean callback(HttpServletRequest request);
 }

+ 13 - 8
zhongzheng-system/src/main/java/com/zhongzheng/modules/alioss/service/impl/OssServiceImpl.java

@@ -58,8 +58,10 @@ public class OssServiceImpl implements OssService {
         // 回调
         OssCallbackParam callback = new OssCallbackParam();
         callback.setCallbackUrl(ALIYUN_OSS_CALLBACK);
-        callback.setCallbackBody("{\"filename\":${object},\"size\":${size},\"mimeType\":${mimeType},\"height\":${imageInfo.height},\"width\":${imageInfo.width}}");
-        callback.setCallbackBodyType("application/json");
+      /*  callback.setCallbackBody("{\"filename\":${object},\"size\":${size},\"mimeType\":${mimeType},\"height\":${imageInfo.height},\"width\":${imageInfo.width}}");
+        callback.setCallbackBodyType("application/json");*/
+        callback.setCallbackBody("filename=${object}&size=${size}&mimeType=${mimeType}&height=${imageInfo.height}&width=${imageInfo.width}");
+        callback.setCallbackBodyType("application/x-www-form-urlencoded");
         // 提交节点
         String action = "https://" + ALIYUN_OSS_ENDPOINT;
         try {
@@ -103,12 +105,15 @@ public class OssServiceImpl implements OssService {
     }
 
     @Override
-    public ResultBean callback(Map<String, Object> map) {
-        JSONObject resultBean = new JSONObject();
-        String filename = map.get("filename").toString();
+    public ResultBean callback(HttpServletRequest request) {
+        net.sf.json.JSONObject resultBean = new net.sf.json.JSONObject();
+        String filename = request.getParameter("filename");
         filename = "https://".concat(ALIYUN_OSS_ENDPOINT).concat("/").concat(filename);
-        resultBean.set("filename",filename).set("size",map.get("size").toString()).set("mimeType",map.get("mimeType").toString())
-        .set("width",map.get("width").toString()).set("height",map.get("height").toString());
-       return new ResultBean(resultBean);
+        resultBean.put("filename",filename);
+        resultBean.put("size",request.getParameter("size"));
+        resultBean.put("mimeType",request.getParameter("mimeType"));
+        resultBean.put("width",request.getParameter("width"));
+        resultBean.put("height",request.getParameter("height"));
+        return new ResultBean(resultBean);
     }
 }