Commit 6310624c428850640454d5422315b5b20174a2cb
1 parent
2c41d562
fix: 修复API响应加密时添加加密 header 标识不生效的问题
Showing
1 changed file
with
4 additions
and
2 deletions
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/encrypt/core/filter/ApiEncryptResponseWrapper.java
| ... | ... | @@ -45,12 +45,14 @@ public class ApiEncryptResponseWrapper extends HttpServletResponseWrapper { |
| 45 | 45 | // 2. 加密 body |
| 46 | 46 | String encryptedBody = symmetricEncryptor != null ? symmetricEncryptor.encryptBase64(body) |
| 47 | 47 | : asymmetricEncryptor.encryptBase64(body, KeyType.PublicKey); |
| 48 | - response.getWriter().write(encryptedBody); | |
| 49 | 48 | |
| 50 | - // 3. 添加加密 header 标识 | |
| 49 | + // 3. 添加加密 header 标识(设置header要放在response的write之前) | |
| 51 | 50 | this.addHeader(properties.getHeader(), "true"); |
| 52 | 51 | // 特殊:特殊:https://juejin.cn/post/6867327674675625992 |
| 53 | 52 | this.addHeader("Access-Control-Expose-Headers", properties.getHeader()); |
| 53 | + | |
| 54 | + // 4. 输出加密后的 body | |
| 55 | + response.getWriter().write(encryptedBody); | |
| 54 | 56 | } |
| 55 | 57 | |
| 56 | 58 | @Override | ... | ... |