@@ -203,7 +203,7 @@ delete子查询, druid wall 拦截器报错 sql injection violation
203203
204204#### 测试案例
205205
206- 查询单个range ref引用
206+ #### 查询单个range ref引用
207207
208208```
209209// 测试 mysql8 with as表达式
@@ -272,12 +272,40 @@ mysql5.7执行结果:
272272#### 查询多个range ref引用
273273
274274```
275- { "sql@": { "@method": "GET", "with": true, "from": "Sys_role", "Sys_role": { "@column": "id", "role_name": "角色1" } }, "sql_user@": { "@method": "GET", "with": true, "from": "Sys_user", "Sys_user": { "@column": "id", "id": "f0894db2-6940-4d89-a5b2-4405d0ad0c8f" } }, "Sys_user_role:sur[]": { "@method": "GET", "Sys_user_role": { "role_id{}@": "sql", "user_id{}@": "sql_user" } }, "Sys_role_permission:srp[]": { "@method": "GET", "Sys_role_permission": { "role_id{}@": "sql" } }, "@explain": true}
276-
277-
278-
279-
280- Plain Text
275+ {
276+ "sql@": {
277+ "@method": "GET",
278+ "with": true,
279+ "from": "Sys_role",
280+ "Sys_role": {
281+ "@column": "id",
282+ "role_name": "角色1"
283+ }
284+ },
285+ "sql_user@": {
286+ "@method": "GET",
287+ "with": true,
288+ "from": "Sys_user",
289+ "Sys_user": {
290+ "@column": "id",
291+ "id": "f0894db2-6940-4d89-a5b2-4405d0ad0c8f"
292+ }
293+ },
294+ "Sys_user_role:sur[]": {
295+ "@method": "GET",
296+ "Sys_user_role": {
297+ "role_id{}@": "sql",
298+ "user_id{}@": "sql_user"
299+ }
300+ },
301+ "Sys_role_permission:srp[]": {
302+ "@method": "GET",
303+ "Sys_role_permission": {
304+ "role_id{}@": "sql"
305+ }
306+ },
307+ "@explain": true
308+ }
281309```
282310
283311mysql8执行结果:
@@ -385,6 +413,8 @@ mysql5.7执行结果:
385413
386414#### GETS 单条子查询
387415
416+ 会执行校验流程
417+
388418```
389419http://localhost:8675/lowCodePlatform/forms/api/gets
390420
@@ -450,6 +480,8 @@ mysql5.7执行结果:
450480
451481#### GETS多条子查询
452482
483+ 会执行校验流程
484+
453485```
454486http://localhost:8675/lowCodePlatform/forms/api/gets
455487
@@ -500,7 +532,7 @@ mysql5.7执行结果:
500532
501533#### head 单个子查询
502534
503- 普通获取数量
535+ 普通获取数量, get/head不执行校验流程
504536
505537```
506538http://localhost:8675/lowCodePlatform/forms/api/head
@@ -533,7 +565,7 @@ mysql5.7执行结果:
533565
534566#### head 多个子查询
535567
536- 普通获取数量
568+ 普通获取数量, get/head不执行校验流程
537569
538570```
539571{
@@ -581,7 +613,7 @@ mysql5.7执行结果:
581613
582614普通获取数量
583615
584- Access、Request需要配置鉴权信息:
616+ 会执行校验流程, Access、Request需要配置鉴权信息:
585617
586618![ img] ( https://tcs-devops.aliyuncs.com/storage/112oe091e1d4376a6fcb62cbce0383cdddf9?Signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBcHBJRCI6IjVlNzQ4MmQ2MjE1MjJiZDVjN2Y5YjMzNSIsIl9hcHBJZCI6IjVlNzQ4MmQ2MjE1MjJiZDVjN2Y5YjMzNSIsIl9vcmdhbml6YXRpb25JZCI6IiIsImV4cCI6MTY2OTk0NTcwNiwiaWF0IjoxNjY5MzQwOTA2LCJyZXNvdXJjZSI6Ii9zdG9yYWdlLzExMm9lMDkxZTFkNDM3NmE2ZmNiNjJjYmNlMDM4M2NkZGRmOSJ9._BSyl8VzN15CTAxr_J1ud0tzYCBQwGQWqaiBRvmau8Q )
587619
@@ -617,7 +649,7 @@ mysql5.7执行结果:
617649
618650#### heads 多个子查询
619651
620- Access、Request需要配置鉴权信息:
652+ 会执行校验流程, Access、Request需要配置鉴权信息:
621653
622654![ img] ( https://tcs-devops.aliyuncs.com/storage/112od6c06bedd0338403de83a3da034862b6?Signature=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBcHBJRCI6IjVlNzQ4MmQ2MjE1MjJiZDVjN2Y5YjMzNSIsIl9hcHBJZCI6IjVlNzQ4MmQ2MjE1MjJiZDVjN2Y5YjMzNSIsIl9vcmdhbml6YXRpb25JZCI6IiIsImV4cCI6MTY2OTk0NTcwNiwiaWF0IjoxNjY5MzQwOTA2LCJyZXNvdXJjZSI6Ii9zdG9yYWdlLzExMm9kNmMwNmJlZGQwMzM4NDAzZGU4M2EzZGEwMzQ4NjJiNiJ9.c4OVSUGncl_anepEZN1jzHmk7FiIRY-UcRj6EOn0ySk )
623655
@@ -667,7 +699,7 @@ mysql5.7执行结果:
667699
668700
669701
670- ### delete 支持子查询
702+ ### delete、put 支持子查询
671703
672704https://github.com/Tencent/APIJSON/issues/471
673705
@@ -679,6 +711,8 @@ https://github.com/Tencent/APIJSON/issues/471
679711
680712AbstractVerifier.IS_UPDATE_MUST_HAVE_ID_CONDITION = true; // true: 必须有
681713
714+ ![ image-20221126145415115] (/Users/xy/Library/Application Support/typora-user-images/image-20221126145415115.png)
715+
6827162、细粒度控制
683717
684718![ image-20221125154603033] (/Users/xy/Library/Application Support/typora-user-images/image-20221125154603033.png)
@@ -774,6 +808,54 @@ http://localhost:8675/lowCodePlatform/forms/api/delete
774808
775809![ image-20221125161720199] (/Users/xy/Library/Application Support/typora-user-images/image-20221125161720199.png)
776810
811+ 开启id删除、id引用 删除成功
812+
813+ ```
814+ {
815+ "sql@": {
816+ "@method": "GET",
817+ "with": true,
818+ "from": "Sys_user_role",
819+ "Sys_user_role": {
820+ "@column": "user_id",
821+ "role_id{}": ["0bb92d96-8ca6-469e-91e8-60308ce5b835"]
822+ }
823+ },
824+ "Sys_user:aa": {
825+ "@method": "DELETE",
826+ "id{}@": "sql"
827+ },
828+ "explan": true
829+ }
830+ ```
831+
832+ ![ image-20221126145714808] (/Users/xy/Library/Application Support/typora-user-images/image-20221126145714808.png)
833+
834+ PUT 子查询 修改
835+
836+ ```
837+ {
838+ "sql@": {
839+ "@method": "GET",
840+ "with": true,
841+ "from": "Sys_role_permission",
842+ "Sys_role_permission": {
843+ "@column": "role_id",
844+ "id{}": ["ba2634f8-0bdc-4b50-9c5e-47786b1536ef"]
845+ }
846+ },
847+ "Sys_role": {
848+ "@method": "PUT",
849+ "id{}@": "sql",
850+ "role_code": "code-subrange-5",
851+ "role_name": "角色-subrange-5"
852+ },
853+ "@explain": true
854+ }
855+ ```
856+
857+ ![ image-20221126151726450] (/Users/xy/Library/Application Support/typora-user-images/image-20221126151726450.png)
858+
777859#### bug修复
778860
779861删除操作 主表 和 子查询 是同一张表
@@ -788,7 +870,7 @@ WHERE ( (`username` IN (SELECT * FROM (SELECT `username` FROM `housekeeping`.`Us
788870
789871![ image] ( https://user-images.githubusercontent.com/12228225/203517315-4ab11545-4285-4737-92a3-cfd1494e2652.png )
790872
791- ### must判断、delete删除支持 ref
873+ ### must、refuses判断、delete、PUT支持 ref
792874
793875```
794876{
@@ -809,4 +891,4 @@ WHERE ( (`username` IN (SELECT * FROM (SELECT `username` FROM `housekeeping`.`Us
809891}
810892```
811893
812- ![ image-20221125161821101] (/Users/xy/Library/Application Support/typora-user-images/image-20221125161821101.png)
894+ ![ image-20221125161821101] (/Users/xy/Library/Application Support/typora-user-images/image-20221125161821101.png)
0 commit comments