潘志宝
2024-10-15 856d69ce678173e0a8e165bcb0135037d20b48ee
提交 | 用户 | 时间
e7c126 1 package com.iailab.framework.signature.core.annotation;
H 2
3 import com.iailab.framework.common.exception.enums.GlobalErrorCodeConstants;
4
5 import java.lang.annotation.*;
6 import java.util.concurrent.TimeUnit;
7
8
9 /**
10  * HTTP API 签名注解
11  *
12  * @author Zhougang
13  */
14 @Inherited
15 @Documented
16 @Target({ElementType.METHOD, ElementType.TYPE})
17 @Retention(RetentionPolicy.RUNTIME)
18 public @interface ApiSignature {
19
20     /**
21      * 同一个请求多长时间内有效 默认 60 秒
22      */
23     int timeout() default 60;
24
25     /**
26      * 时间单位,默认为 SECONDS 秒
27      */
28     TimeUnit timeUnit() default TimeUnit.SECONDS;
29
30     // ========================== 签名参数 ==========================
31
32     /**
33      * 提示信息,签名失败的提示
34      *
35      * @see GlobalErrorCodeConstants#BAD_REQUEST
36      */
37     String message() default "签名不正确"; // 为空时,使用 BAD_REQUEST 错误提示
38
39     /**
40      * 签名字段:appId 应用ID
41      */
42     String appId() default "appId";
43
44     /**
45      * 签名字段:timestamp 时间戳
46      */
47     String timestamp() default "timestamp";
48
49     /**
50      * 签名字段:nonce 随机数,10 位以上
51      */
52     String nonce() default "nonce";
53
54     /**
55      * sign 客户端签名
56      */
57     String sign() default "sign";
58
59 }