From 89fc744e4f2fb9a4c3096695f067e455b0542223 Mon Sep 17 00:00:00 2001 From: hyy <307310974@qq.com> Date: Wed, 23 Aug 2023 17:31:12 +0800 Subject: [PATCH 01/27] =?UTF-8?q?Update=20=E6=97=A5=E5=BF=97=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\227\245\345\277\227\346\234\215\345\212\241.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/product/\345\255\230\345\202\250\344\270\216CDN/\345\206\205\345\256\271\345\210\206\345\217\221\347\275\221\347\273\234/\346\223\215\344\275\234\346\214\207\345\215\227/\346\227\245\345\277\227\346\234\215\345\212\241.md" "b/product/\345\255\230\345\202\250\344\270\216CDN/\345\206\205\345\256\271\345\210\206\345\217\221\347\275\221\347\273\234/\346\223\215\344\275\234\346\214\207\345\215\227/\346\227\245\345\277\227\346\234\215\345\212\241.md" index b4a919dc7267..b098e36ca5f3 100644 --- "a/product/\345\255\230\345\202\250\344\270\216CDN/\345\206\205\345\256\271\345\210\206\345\217\221\347\275\221\347\273\234/\346\223\215\344\275\234\346\214\207\345\215\227/\346\227\245\345\277\227\346\234\215\345\212\241.md" +++ "b/product/\345\255\230\345\202\250\344\270\216CDN/\345\206\205\345\256\271\345\210\206\345\217\221\347\275\221\347\273\234/\346\223\215\344\275\234\346\214\207\345\215\227/\346\227\245\345\277\227\346\234\215\345\212\241.md" @@ -728,7 +728,7 @@ - 访问日志中仅可记录应用层数据,在实际网络传输中,产生的网络流量要比纯应用层流量多5% - 15%。由两部分组成: - TCP/IP 包头消耗,基于 TCP/IP 协议的 HTTP 请求,每一个包的大小最大是1500个字节,包含了 TCP 和 IP 协议的40个字节的包头,包头部分会产生流量,但是无法被应用层统计到,这部分的开销大致为3%左右; - TCP 重传,正常网络传输过程中,发送的网络包会有3% - 10%左右会被互联网丢掉,丢掉后服务器会对丢弃的部分进行重传,此部分流量应用层也无法统计,占比约为3% - 7%。 -- 在业内标准中,计费用流量一般在应用层流量的基础上加上上述开销,腾讯云 CDN 取10%,因此监控流量约为日志计算流量的110%。 +- 在业内标准中,计费流量一般在应用层流量的基础上加上上述开销,腾讯云 CDN 取10%,因此监控流量约为日志计算流量的110%。 ## 使用案例 From 215d65d318a819faec2037439ea71131981c4be6 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Wed, 23 Aug 2023 17:31:36 +0800 Subject: [PATCH 02/27] =?UTF-8?q?Create=20=E5=BE=AE=E6=90=AD=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=BA=93=E5=AE=8C=E5=A4=87=E6=80=A7=E5=AF=B9=E6=AF=94?= =?UTF-8?q?.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...07\346\200\247\345\257\271\346\257\224.md" | 442 ++++++++++++++++++ 1 file changed, 442 insertions(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" new file mode 100644 index 000000000000..715a306940ac --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" @@ -0,0 +1,442 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
核心组件场景对比 +
业务场景 + 组件类型 + 微搭 + Ant design + TDesign + Element +
基础组件文本
按钮
链接
图标
数据展示图片
轮播/走马灯
二维码--
列表
表格
日历
富文本展示/排版
统计卡片
图表
+(折线图、柱状图、饼图...)
---
视频播放---
九宫格抽奖---
网页嵌套
+(iframe/webview)
---
时间轴规划中
进度条规划中
标签规划中
数据录入表单
单行/多行输入
数字输入
开关
单选/多选
下拉选择
日期/时间选择
上传
富文本编辑---
地区选择---
地图定位---
成员/部门选择---
级联选择/树选择规划中
评分规划中
滑块规划中
页面布局网格/栅格
卡片
分割线
布局
折叠面板规划中
滚动容器
页面导航菜单导航
Tab 栏-
顶部导航/导航栏-
宫格导航---
选项卡
分页
(表格、列表组件内置)
步骤条规划中
面包屑规划中
反馈提示弹窗/对话框
气泡提示
toast 轻提示
(以事件动作形式提供)
抽屉规划中
水印
(以自定义形式提供)
小程序生态获取用户手机号---
小程序分享---
公众号关注---
客户会话---
获取用户头像
(图片上传组件内置)
---
获取用户昵称
(单行输入组件内置)
---
From 4adf144d1c667b909d128529fab4d262d1794314 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Wed, 23 Aug 2023 17:34:26 +0800 Subject: [PATCH 03/27] =?UTF-8?q?Update=20=E6=96=B0=E6=89=8B=E6=8C=87?= =?UTF-8?q?=E5=BC=95.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...60\346\211\213\346\214\207\345\274\225.md" | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" index 37e2a20e67fb..53e5e4f2a13d 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" @@ -146,13 +146,7 @@ 了解如何通过角色实现功能、数据权限的控制 - 6 - 企业工作台 - 工作台概述 - 了解工作台的基础概念和用法 - - - 7 + 6 小程序 注册小程序 了解在微搭中如何实现小程序的注册认证 @@ -170,13 +164,13 @@ 了解如何获取应用运行态中当前登录用户的 openid - 8 + 7 模板指南 模板中心 学习多个模块的使用说明和搭建方法 - 9 + 8 最佳实践 快速搭建 GPT 聊天应用 通过该实践教程快速熟悉如何使用表达式、事件、Query、APIs、数据表存储等基础能力 @@ -284,12 +278,16 @@ 了解如何为应用开发者设置权限 - 7 - 企业工作台 + 7 + 企业工作台 流程管理 了解在工作台中如何对工作流进行运维管理 - + + 工作台概述 + 了解工作台的基础概念和用法 + + 审计日志 了解审计日志的开通、配置方法和日志查询功能 From 917f3a5d2bac5db96fabc443ca0ef9f27224ef82 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Wed, 23 Aug 2023 17:35:57 +0800 Subject: [PATCH 04/27] =?UTF-8?q?Update=20=E6=96=B0=E6=89=8B=E6=8C=87?= =?UTF-8?q?=E5=BC=95.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...346\226\260\346\211\213\346\214\207\345\274\225.md" | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" index 53e5e4f2a13d..43b74ce02846 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" @@ -236,7 +236,7 @@ 5 工作流 - 流程的组成 +流程的组成 了解流程的基础概念和组成部分 @@ -280,12 +280,12 @@ 7 企业工作台 - 流程管理 - 了解在工作台中如何对工作流进行运维管理 +工作台概述 + 了解工作台的基础概念和用法 - 工作台概述 - 了解工作台的基础概念和用法 + 流程管理 + 了解在工作台中如何对工作流进行运维管理 审计日志 From 0cac0fa59e86703a9c445ff8369231605c8193d8 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Wed, 23 Aug 2023 17:39:44 +0800 Subject: [PATCH 05/27] =?UTF-8?q?Update=20=E5=BE=AE=E6=90=AD=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=BA=93=E5=AE=8C=E5=A4=87=E6=80=A7=E5=AF=B9=E6=AF=94?= =?UTF-8?q?.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...244\207\346\200\247\345\257\271\346\257\224.md" | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" index 715a306940ac..3285fa8c27ee 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" @@ -1,14 +1,14 @@ - - From 2098dda8d7c94fa3d554e719cf1ea8a07a688019 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Wed, 23 Aug 2023 17:40:19 +0800 Subject: [PATCH 06/27] =?UTF-8?q?Update=20=E6=96=B0=E6=89=8B=E6=8C=87?= =?UTF-8?q?=E5=BC=95.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\226\260\346\211\213\346\214\207\345\274\225.md" | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" index 43b74ce02846..1259f003f0f5 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\226\260\346\211\213\346\214\207\345\274\225.md" @@ -132,7 +132,7 @@ - + @@ -146,7 +146,7 @@ - + @@ -164,13 +164,13 @@ - + - + From 980728fe54616d2bc0ac9b3c92dafba8dc2f39c9 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 09:46:46 +0800 Subject: [PATCH 07/27] =?UTF-8?q?Update=20=E5=BE=AE=E6=90=AD=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=BA=93=E5=AE=8C=E5=A4=87=E6=80=A7=E5=AF=B9=E6=AF=94?= =?UTF-8?q?.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...07\346\200\247\345\257\271\346\257\224.md" | 500 +++++++++--------- 1 file changed, 249 insertions(+), 251 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" index 3285fa8c27ee..484cdfd1e9c8 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" @@ -4,439 +4,437 @@ - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + +
核心组件场景对比 + 核心组件场景对比
业务场景 - 组件类型 - 微搭 - Ant design - TDesign - Element + 业务场景 + 组件类型 + 微搭 + Ant design + TDesign + Element
基础组件了解如何连接自有的 MySQL 数据库
54 用户权限 用户管理 了解企业内部用户、外部用户、组织架构的相关概念和管理方法了解如何通过角色实现功能、数据权限的控制
65 小程序 注册小程序 了解在微搭中如何实现小程序的注册认证了解如何获取应用运行态中当前登录用户的 openid
76 模板指南 模板中心 学习多个模块的使用说明和搭建方法
87 最佳实践 快速搭建 GPT 聊天应用 通过该实践教程快速熟悉如何使用表达式、事件、Query、APIs、数据表存储等基础能力
业务场景 - 组件类型 - 微搭 - Ant design - TDesign - Element + 组件类型 + 微搭 + Ant design + TDesign + Element
基础组件 文本
按钮
链接
图标
数据展示 图片
轮播/走马灯
二维码----
列表
表格
日历
富文本展示/排版
统计卡片
图表
-(折线图、柱状图、饼图...)
---图表(折线图、柱状图、饼图...)---
视频播放------
九宫格抽奖------
网页嵌套
-(iframe/webview)
---网页嵌套(iframe/webview)---
时间轴规划中规划中
进度条规划中规划中
标签规划中规划中
数据录入 表单
单行/多行输入
数字输入
开关
单选/多选
下拉选择
日期/时间选择
上传
富文本编辑------
地区选择------
地图定位------
成员/部门选择------
级联选择/树选择规划中规划中
评分规划中规划中
滑块规划中规划中
页面布局 网格/栅格
卡片
分割线
布局
折叠面板规划中规划中
滚动容器
页面导航 菜单导航
Tab 栏--
顶部导航/导航栏--
宫格导航------
选项卡
分页
(表格、列表组件内置)

表格、列表组件内置
步骤条规划中规划中
面包屑规划中面包屑规划中
反馈提示 弹窗/对话框
气泡提示
toast 轻提示
(以事件动作形式提供)

以事件动作形式提供
抽屉规划中规划中
水印
(以自定义形式提供)

以自定义形式提供
小程序生态获取用户手机号---获取用户手机号---
小程序分享------
公众号关注------
客户会话------
获取用户头像
(图片上传组件内置)
---
图片上传组件内置
---
获取用户昵称
(单行输入组件内置)
---
单行输入组件内置
---
From 36c4fc8e9907ce5e2ca4bfa1dfb1a427bcc8d110 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 09:47:41 +0800 Subject: [PATCH 08/27] =?UTF-8?q?Update=20=E5=BE=AE=E6=90=AD=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=BA=93=E5=AE=8C=E5=A4=87=E6=80=A7=E5=AF=B9=E6=AF=94?= =?UTF-8?q?.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" index 484cdfd1e9c8..c7924c8c12d9 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" @@ -352,7 +352,7 @@ ✓ - 面包屑 + 面包屑 规划中 ✓ ✓ From 50ac1921dca9d974afc0f81ce1d3b7ef7613d523 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:30:25 +0800 Subject: [PATCH 09/27] =?UTF-8?q?Create=20=E6=A6=82=E8=BF=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\346\246\202\350\277\260.md" | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\346\246\202\350\277\260.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\346\246\202\350\277\260.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\346\246\202\350\277\260.md" new file mode 100644 index 000000000000..cd0ea8add5d0 --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\346\246\202\350\277\260.md" @@ -0,0 +1,90 @@ +本文将以简单的商品购买为例,介绍微搭提供的普通商户支付能力,您可以通过本文了解如何使用进行微信支付、退款以及商品、订单管理后台的搭建。 +在开发之前,您需要准备好**非个人主体的微信小程序、微信支付商户号、商户号绑定小程序 AppID、商户 API 证书序列号、商户 API 私钥和 API V3 密钥**,并且**非个人主体的微信小程序、微信支付商户号**两者之前需要提前做好绑定。相关帮助文档请参见 [通过微搭快速注册小程序](https://cloud.tencent.com/document/product/1301/57644)、[获取商户号](https://pay.weixin.qq.com/static/applyment_guide/applyment_detail_miniapp.shtml)、[商户号绑定小程序 AppID](https://pay.weixin.qq.com/static/pay_setting/appid_protocol.shtml)、[商户 API 证书序列号](https://kf.qq.com/faq/161222NneAJf161222U7fARv.html)、[商户 API 私钥](https://kf.qq.com/faq/161222NneAJf161222U7fARv.html)、[API V3 密钥](https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_2.shtml)。 + +## 需求分析 +支付模板主要功能包括商品售卖和订单管理,因此将主功能拆分为两部分。 +- 小程序端:包括商品展示售卖、订单展示与退款。 +- 管理端:包括商品信息、支付订单信息管理。 + +## 功能规划 +需求收集好后,通过思维导图来梳理支付所有功能。 + + +根据思维导图拆解功能页面。 + +| 页面名称 | 功能描述 | +|---------|---------| +| 首页| 包括商品展示列表、发起支付| +| 订单列表| 展示全部订单、已支付订单、未支付订单、已退款订单| + +## 数据源设计 +一般商品和订单信息都需要运营人员进行维护,将该部分信息提供至数据源中,方便查阅管理。 + +### 商品信息数据源 + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段名称 + 字段标识 + 字段类型 + 字段描述 +
商品名称 spmc 文本、短文本用于存储商品名称信息
商品价格 spjg数字用于存储商品价格信息
商品描述 spms文本、短文本用于存储商品详细描述信息
商品图片 sptp图片用于存储商品图片,以图片形式在页面展示
+ + +### 订单信息数据源 + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段名称 + 字段标识 + 字段类型 + 字段描述 +
订单号ddh自动编号 用于存储订单
商品名称spmc文本用于存储商品名称
商品价格spjg数字用于存储价格信息
支付状态zfzt数字用于存储订单支付状态:
1:表示未支付
2:表示已支付
3:表示退款中
4:表示已退款
From 1d458033186b9e9ebab9e257483ce633faa398dd Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:33:56 +0800 Subject: [PATCH 10/27] =?UTF-8?q?Create=20=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=9B=B4=E8=BF=9E=E6=94=AF=E4=BB=98=E5=8A=9F=E8=83=BD=E6=A6=82?= =?UTF-8?q?=E8=BF=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" | 1 + 1 file changed, 1 insertion(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" new file mode 100644 index 000000000000..8b137891791f --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" @@ -0,0 +1 @@ + From abafb1f5930274d16a8408d73eb34779c21960b0 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:34:33 +0800 Subject: [PATCH 11/27] =?UTF-8?q?Delete=20=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=9B=B4=E8=BF=9E=E6=94=AF=E4=BB=98=E5=8A=9F=E8=83=BD=E6=A6=82?= =?UTF-8?q?=E8=BF=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" | 1 - 1 file changed, 1 deletion(-) delete mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" deleted file mode 100644 index 8b137891791f..000000000000 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\346\246\202\350\277\260.md" +++ /dev/null @@ -1 +0,0 @@ - From 618f75fc9e735b628ff936974fd71c19ea3d68e8 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:35:54 +0800 Subject: [PATCH 12/27] =?UTF-8?q?Create=20=E7=AE=A1=E7=90=86=E7=AB=AF?= =?UTF-8?q?=E9=85=8D=E7=BD=AE.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...7\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" | 1 + 1 file changed, 1 insertion(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" new file mode 100644 index 000000000000..8b137891791f --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" @@ -0,0 +1 @@ + From 773d009c50be1dae79b8f50d6b1378eb74643f79 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:55:17 +0800 Subject: [PATCH 13/27] =?UTF-8?q?Update=20=E7=AE=A1=E7=90=86=E7=AB=AF?= =?UTF-8?q?=E9=85=8D=E7=BD=AE.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...06\347\253\257\351\205\215\347\275\256.md" | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" index 8b137891791f..cc32341f95bb 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\347\256\241\347\220\206\347\253\257\351\205\215\347\275\256.md" @@ -1 +1,39 @@ +本文将介绍如何通过 [微搭控制台](https://console.cloud.tencent.com/lowcode) 创建数据源、微信支付 APIs、应用管理后台、分配访问权限相关功能。 +## 操作步骤 +### 步骤1:创建数据源 +1. 登录 [微搭控制台](https://console.cloud.tencent.com/lowcode),进入**数据源** > **数据模型**页面,选择**新建数据模型**。 +![](https://qcloudimg.tencent-cloud.cn/raw/d724007e57d9fa96ced8e88d272efcad.png) +录入数据源名称和标识,单击**开始新建**。创建两个数据模型**微信支付商品信息**和**微信支付模板订单数据**,分别记录商品信息和支付商品产生的订单信息。 +2. 进入创建的**数据模型**编辑页面,单击**添加字段**,录入字段信息。 +![](https://qcloudimg.tencent-cloud.cn/raw/f02a2f027c8438d0dfd41a248dca0962.png) +按照**概述**中数据源设计,依次完成数据源创建和字段的添加。 + - 微信支付-商品信息。 +![](https://qcloudimg.tencent-cloud.cn/raw/ce2f32b159b06440e275f6907e49b39a.png) + - 微信支付-模板订单数据。 +![](https://qcloudimg.tencent-cloud.cn/raw/f5c5ada19326213a38bad12333b01539.png) +>?因微信支付时传入的订单有唯一性要求,故在订单号创建时,数据类型选择**自动编号**,由**固定前缀_日期-连续数字**来模拟创建订单号,开发者也可根据自身业务规则自定义创建与存储。 +![](https://qcloudimg.tencent-cloud.cn/raw/6398722a104ec8240a6a725098e1ab60.png) + +### 步骤2:创建微信支付 APIs +微搭提供了微信支付-小程序 JSAPI 下单、查询订单 API-微信支付订单号查询、查询订单 API-商户订单号查询、关闭订单、下载对账单以及退款相关接口,仅需完成相关配置,即可调用微信支付相关接口,完成业务搭建。 +1. 进入**数据源** > **APIs** 页面,选择**新建 APIs**。 +![](https://qcloudimg.tencent-cloud.cn/raw/d5b44e1769013d24fa3412d9370a6401.png) +2. 选择**微信支付-小程序**进入创建微信支付 API 流程,详细说明请参见 [**微信支付**](https://cloud.tencent.com/document/product/1301/76292) > **新建微信支付 API 部分**。 +![](https://qcloudimg.tencent-cloud.cn/raw/7e5517057eabeee0e995b43c684a3a9f.png) + +### 步骤3:创建商品和订单管理后台 +数据源创建好之后,需要给运营人员创建一个管理后台。在微搭里管理后台可以由平台自动生成。 +1. 进入**应用开发** > **应用**页面,单击**新建应用** > **新建模型应用**。 +![](https://qcloudimg.tencent-cloud.cn/raw/1e62489b5adbf3455d68683ba371ffc1.png) +2. 进入**新建数据模型应用**页面,录入应用的名称,勾选创建的数据源,单击**创建页面**。 +![](https://qcloudimg.tencent-cloud.cn/raw/150c0628a1da45c903e5d5a02e26c857.png) +3. 后台用于业务人员使用,这里开发人员可以根据业务诉求,选择相应展示的字段,对页面内容进行相应调整。因为模板功能相对聚焦,完成导航菜单配置、发布数据源等相关操作,即可选择发布体验版进行测试。 +![](https://qcloudimg.tencent-cloud.cn/raw/21eae60017e82b3196952f8664745bfa.png) +发布成功后,出现二维码和链接。 +![](https://qcloudimg.tencent-cloud.cn/raw/9e1c831d1a06625824841b792b8b89d8.png) +单击访问企业工作台进入后台页面,为方便测试可以在管理后台先录入一些测试数据。 +![](https://qcloudimg.tencent-cloud.cn/raw/a7d56d3922015be814a2928761fbe28d.png) + +### 步骤4:分配访问权限 +如果使用者为运营人员,可以创建用户进行权限管理,创建方法参见 [用户权限](https://cloud.tencent.com/document/product/1301/67238) 进行操作配置。 From 03b3a800b3abd86ffd537eca73dff1e36cd07abf Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 10:56:28 +0800 Subject: [PATCH 14/27] =?UTF-8?q?Create=20=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=9B=B4=E8=BF=9E=E6=94=AF=E4=BB=98=E6=A8=A1=E6=9D=BF.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" | 1 + 1 file changed, 1 insertion(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" new file mode 100644 index 000000000000..587be6b4c3f9 --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" @@ -0,0 +1 @@ +x From 6907ecb2acbb019b8a6c79d01ea1866201a1b029 Mon Sep 17 00:00:00 2001 From: chuikingfan <133618838+chuikingfan@users.noreply.github.com> Date: Thu, 24 Aug 2023 11:21:25 +0800 Subject: [PATCH 15/27] =?UTF-8?q?Update=20JavaScript=EF=BC=88=E5=BA=94?= =?UTF-8?q?=E7=94=A8=E8=AE=A4=E8=AF=81=EF=BC=89.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...50\350\256\244\350\257\201\357\274\211.md" | 221 ++++++++++-------- 1 file changed, 128 insertions(+), 93 deletions(-) diff --git "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\345\274\200\345\217\221\350\200\205\346\214\207\345\215\227/\345\244\232\347\247\215\350\257\255\350\250\200\347\224\237\346\210\220\345\272\224\347\224\250\350\256\244\350\257\201\347\255\276\345\220\215/JavaScript\357\274\210\345\272\224\347\224\250\350\256\244\350\257\201\357\274\211.md" "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\345\274\200\345\217\221\350\200\205\346\214\207\345\215\227/\345\244\232\347\247\215\350\257\255\350\250\200\347\224\237\346\210\220\345\272\224\347\224\250\350\256\244\350\257\201\347\255\276\345\220\215/JavaScript\357\274\210\345\272\224\347\224\250\350\256\244\350\257\201\357\274\211.md" index bf7b6f5a4db8..69c18292165e 100644 --- "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\345\274\200\345\217\221\350\200\205\346\214\207\345\215\227/\345\244\232\347\247\215\350\257\255\350\250\200\347\224\237\346\210\220\345\272\224\347\224\250\350\256\244\350\257\201\347\255\276\345\220\215/JavaScript\357\274\210\345\272\224\347\224\250\350\256\244\350\257\201\357\274\211.md" +++ "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\345\274\200\345\217\221\350\200\205\346\214\207\345\215\227/\345\244\232\347\247\215\350\257\255\350\250\200\347\224\237\346\210\220\345\272\224\347\224\250\350\256\244\350\257\201\347\255\276\345\220\215/JavaScript\357\274\210\345\272\224\347\224\250\350\256\244\350\257\201\357\274\211.md" @@ -25,62 +25,91 @@ API 网关提供 JSON 请求方式和 form 请求方式的示例代码,请您 ::: JavaScript -const https = require('https') -const crypto = require('crypto') - +const https = require("https"); +const crypto = require("crypto"); // 应用 ApiAppKey -const apiAppKey = '' +const apiAppKey = ""; // 应用 ApiAppSecret -const apiAppSecret = '' - -const dateTime = new Date().toUTCString() +const apiAppSecret = ""; + +// 请求 host +const hostname = "service-0kd7h58k-xxxxxxxx.gz.apigw.tencentcs.com"; +// 端口号:https 对应 443,http 对应 80 +const port = 443; +// 请求 path +const path = "/test"; +// 请求方法 +const method = "POST"; +// const method = "GET"; + +const dateTime = new Date().toUTCString(); +// 请求参数 const body = { - data: '中文' -} - -const bodyStr = JSON.stringify(body) -const md5 = crypto.createHash('md5').update(bodyStr, 'utf8').digest('hex') -const contentMD5 = Buffer.from(md5).toString('base64') + arg1: "arg1", + arg2: "arg2", +}; +// 排序 +const sortedBodyStr = sortBody(body); +const bodyJsonStr = JSON.stringify(body); +const contentMD5 = crypto + .createHash("md5") + .update(bodyJsonStr, "utf8") + .digest("hex"); const options = { - hostname: 'service-e1a368l4-1253970226.cq.apigw.tencentcs.com', - port: 443, - path: '/app_auth', - method: 'POST', + hostname, + port, + path: `${path}${method.toUpperCase() === "GET" ? `?${sortedBodyStr}` : ""}`, + method, headers: { - Accept: 'application/json', - 'Content-Type': 'application/json', - 'Content-MD5': contentMD5, - 'Content-Length': Buffer.byteLength(bodyStr), - 'x-date': dateTime, + Accept: "application/json", + "Content-Type": "application/json", + "Content-MD5": contentMD5, + "Content-Length": Buffer.byteLength(bodyJsonStr), + "x-date": dateTime, }, -} +}; const signingStr = [ `x-date: ${dateTime}`, options.method, options.headers.Accept, - options.headers['Content-Type'], + options.headers["Content-Type"], contentMD5, options.path, -].join('\n') -const signing = crypto.createHmac('sha1', apiAppSecret).update(signingStr, 'utf8').digest('base64') -const sign = `hmac id="${apiAppKey}", algorithm="hmac-sha1", headers="x-date", signature="${signing}"` -options.headers.Authorization = sign +].join("\n"); + +const signing = crypto + .createHmac("sha1", apiAppSecret) + .update(signingStr, "utf8") + .digest("base64"); +const sign = `hmac id="${apiAppKey}", algorithm="hmac-sha1", headers="x-date", signature="${signing}"`; + +options.headers.Authorization = sign; +// 发送请求 const req = https.request(options, (res) => { - console.log(`STATUS: ${res.statusCode}`) - res.on('data', (chunk) => { - console.log('BODY: ' + chunk) - }) -}) -req.on('error', (error) => { - console.error(error) -}) -req.write(bodyStr) -req.end() + console.log(`STATUS: ${res.statusCode}`); + res.on("data", (chunk) => { + console.log("BODY: " + chunk); + }); +}); +req.on("error", (error) => { + console.error(error); +}); +req.write(bodyJsonStr); +req.end(); +function sortBody(body) { + // 按字典序排序 + const keys = Object.keys(body).sort(); + return keys + .map((item) => { + return `${item}=${body[item]}`; + }) + .join("&"); +} ::: @@ -90,78 +119,84 @@ req.end() ::: JavaScript -const https = require('https') -const crypto = require('crypto') -const querystring = require('querystring') +const https = require("https"); +const crypto = require("crypto"); // 应用 ApiAppKey -const apiAppKey = 'APIDLIA6tMfqsinsadaaaaaaaapHLkQ1z0kO5n5P' +const apiAppKey = ""; // 应用 ApiAppSecret -const apiAppSecret = 'Dc44ACV2Da3Gm9JVaaaaaaaaumYRI4CZfVG8Qiuv' - -const dateTime = new Date().toUTCString() +const apiAppSecret = ""; + +// 请求host +const hostname = "service-0kd7h58k-xxxxxxx.gz.apigw.tencentcs.com"; +// 端口号:https 对应 443,http 对应 80 +const port = 443; +// 请求 path +const path = "/test"; +// 请求方法 +const method = "POST"; +// const method = "GET"; +const contentMD5 = ""; +const dateTime = new Date().toUTCString(); +// 请求参数 const body = { - arg1: 'a', - arg2: 'b', -} -const contentMD5 = '' + arg1: "arg1", + arg2: "arg2", +}; + +// 排序 +const sortedBodyStr = sortBody(body); + const options = { - hostname: 'service-xxxxxxxx-1234567890.gz.apigw.tencentcs.com', - port: 443, - path: '/data', - method: 'POST', + hostname, + port, + path: `${path}${method.toUpperCase() === "GET" ? `?${sortedBodyStr}` : ""}`, + method, headers: { - Accept: 'application/json', - 'Content-Type': 'application/x-www-form-urlencoded', - 'x-date': dateTime, + Accept: "application/json", + "Content-Type": "application/x-www-form-urlencoded", + "x-date": dateTime, }, -} +}; + +const signingStr = [ + `x-date: ${dateTime}`, + options.method, + options.headers.Accept, + options.headers["Content-Type"], + contentMD5, + options.path, +].join("\n"); -const sorted_body = sortBody(body) -const signingStr = buildSignStr(sorted_body) -const signing = crypto.createHmac('sha1', apiAppSecret).update(signingStr, 'utf8').digest('base64') -const sign = `hmac id="${apiAppKey}", algorithm="hmac-sha1", headers="x-date", signature="${signing}"` +const signing = crypto + .createHmac("sha1", apiAppSecret) + .update(signingStr, "utf8") + .digest("base64"); +const sign = `hmac id="${apiAppKey}", algorithm="hmac-sha1", headers="x-date", signature="${signing}"`; -options.headers.Authorization = sign +options.headers.Authorization = sign; // 发送请求 const req = https.request(options, (res) => { - console.log(`STATUS: ${res.statusCode}`) - res.on('data', (chunk) => { - console.log('BODY: ' + chunk) - }) -}) -req.on('error', (error) => { - console.error(error) -}) -req.write(querystring.stringify(body)) -req.end() + console.log(`STATUS: ${res.statusCode}`); + res.on("data", (chunk) => { + console.log("BODY: " + chunk); + }); +}); +req.on("error", (error) => { + console.error(error); +}); +req.write(sortedBodyStr); +req.end(); function sortBody(body) { - const keys = Object.keys(body).sort() - let signKeys = [] - for (let i = 0; i < keys.length; i++) { - signKeys.push(keys[i]) - } // 按字典序排序 - return signKeys.sort() -} - -function buildSignStr(sorted_body) { - const keyStr = sorted_body + const keys = Object.keys(body).sort(); + return keys .map((item) => { - return `${item}=${body[item]}` + return `${item}=${body[item]}`; }) - .join('&') - return [ - `x-date: ${dateTime}`, - options.method, - options.headers.Accept, - options.headers['Content-Type'], - contentMD5, - options.path + '?' + keyStr, - ].join('\n') + .join("&"); } ::: - From aa7b95e6d551063e128af013277b2d2485b9eafe Mon Sep 17 00:00:00 2001 From: chuikingfan <133618838+chuikingfan@users.noreply.github.com> Date: Thu, 24 Aug 2023 11:25:14 +0800 Subject: [PATCH 16/27] =?UTF-8?q?Update=20=E5=BA=94=E7=94=A8=E8=AE=A4?= =?UTF-8?q?=E8=AF=81=E6=96=B9=E5=BC=8F.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\350\256\244\350\257\201\346\226\271\345\274\217.md" | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\350\256\244\350\257\201\344\270\216\345\256\211\345\205\250/\345\272\224\347\224\250\350\256\244\350\257\201\346\226\271\345\274\217.md" "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\350\256\244\350\257\201\344\270\216\345\256\211\345\205\250/\345\272\224\347\224\250\350\256\244\350\257\201\346\226\271\345\274\217.md" index 617ac27257e8..2ab54ec91659 100644 --- "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\350\256\244\350\257\201\344\270\216\345\256\211\345\205\250/\345\272\224\347\224\250\350\256\244\350\257\201\346\226\271\345\274\217.md" +++ "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/API\347\275\221\345\205\263/\350\256\244\350\257\201\344\270\216\345\256\211\345\205\250/\345\272\224\347\224\250\350\256\244\350\257\201\346\226\271\345\274\217.md" @@ -139,10 +139,6 @@ API 网关签名校验失败时,会将服务端的签名串(StringToSign) **解决方法:** 1. 检查本地计算的签名串(StringToSign)与服务端返回的签名串是否一致。 2. 检查用于签名计算的 ApiAppSecret 是否正确。 -由于 HTTP Header 中无法表示换行,因此 StringToSign 中的换行符都被替换成 `#`。 -``` -"message":"HMAC signature does not match, Server StringToSign:source: apigw test#x-date: Thu, 11 Mar 2021 08:49:30 GMT#POST#application\/json#application\/x-www-form-urlencoded##\/?p=test" -``` 说明服务器的签名是: ::: 1 @@ -155,3 +151,8 @@ application/x-www-form-urlencoded /?p=test ::: +由于 HTTP Header 中无法表示换行,因此 StringToSign 中的换行符都被替换成 `#`。 +``` +"message":"HMAC signature does not match, Server StringToSign:source: apigw test#x-date: Thu, 11 Mar 2021 08:49:30 GMT#POST#application\/json#application\/x-www-form-urlencoded##\/?p=test" +``` + From a05c22d68b204303b24c6aed550cb61eef77c8ee Mon Sep 17 00:00:00 2001 From: xlwxie <69560049+xlwxie@users.noreply.github.com> Date: Thu, 24 Aug 2023 12:00:42 +0800 Subject: [PATCH 17/27] =?UTF-8?q?Update=20=E4=B8=93=E7=BA=BF=E6=8E=A5?= =?UTF-8?q?=E5=85=A5=E7=82=B9.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...347\272\277\346\216\245\345\205\245\347\202\271.md" | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/\344\270\223\347\272\277\346\216\245\345\205\245/\346\223\215\344\275\234\346\214\207\345\215\22718-08-27/\345\210\233\345\273\272\347\211\251\347\220\206\347\272\277\350\267\257/\344\270\223\347\272\277\346\216\245\345\205\245\347\202\271.md" "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/\344\270\223\347\272\277\346\216\245\345\205\245/\346\223\215\344\275\234\346\214\207\345\215\22718-08-27/\345\210\233\345\273\272\347\211\251\347\220\206\347\272\277\350\267\257/\344\270\223\347\272\277\346\216\245\345\205\245\347\202\271.md" index 8edabe2915bc..4c4d7715aea7 100644 --- "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/\344\270\223\347\272\277\346\216\245\345\205\245/\346\223\215\344\275\234\346\214\207\345\215\22718-08-27/\345\210\233\345\273\272\347\211\251\347\220\206\347\272\277\350\267\257/\344\270\223\347\272\277\346\216\245\345\205\245\347\202\271.md" +++ "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/\344\270\223\347\272\277\346\216\245\345\205\245/\346\223\215\344\275\234\346\214\207\345\215\22718-08-27/\345\210\233\345\273\272\347\211\251\347\220\206\347\272\277\350\267\257/\344\270\223\347\272\277\346\216\245\345\205\245\347\202\271.md" @@ -243,8 +243,8 @@ 广东省深圳市坪山区锦绣西路骏德物流中心 -华北 -北京 +华北 +北京 北京 - A - 科创 电信、移动、联通 电口、光口 @@ -341,6 +341,12 @@ 北京朝阳区电子城IT产业园德信大厦 +北京 - G - 兆丰 +中立 +电口、光口 +北京市顺义区昌金路兆丰一街21号华威美林 + + 哈尔滨 哈尔滨 - A - 哈南 移动 From 838a7ae6ab67f15698d7b45a03d83e505a971956 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:10:54 +0800 Subject: [PATCH 18/27] =?UTF-8?q?Update=20=E5=BE=AE=E6=90=AD=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E5=BA=93=E5=AE=8C=E5=A4=87=E6=80=A7=E5=AF=B9=E6=AF=94?= =?UTF-8?q?.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" index c7924c8c12d9..b8e65e23f1ce 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\223\215\344\275\234\346\214\207\345\215\227/\347\273\204\344\273\266/\345\276\256\346\220\255\347\273\204\344\273\266\345\272\223\345\256\214\345\244\207\346\200\247\345\257\271\346\257\224.md" @@ -104,7 +104,7 @@ ✓ - 图表(折线图、柱状图、饼图...) + 图表(折线图、柱状图等) ✓ - - From 61c34802d4954dab929bd4b881d9fb4122a6c95c Mon Sep 17 00:00:00 2001 From: xlwxie <69560049+xlwxie@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:36:49 +0800 Subject: [PATCH 19/27] =?UTF-8?q?Update=20=E9=85=8D=E7=BD=AE=E8=AE=BF?= =?UTF-8?q?=E9=97=AE=E6=8E=A7=E5=88=B6=E7=AD=96=E7=95=A5.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\227\256\346\216\247\345\210\266\347\255\226\347\225\245.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/VPN\350\277\236\346\216\245/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \347\256\241\347\220\206/\347\256\241\347\220\206 SSL \346\234\215\345\212\241\347\253\257/\351\205\215\347\275\256\350\256\277\351\227\256\346\216\247\345\210\266\347\255\226\347\225\245.md" "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/VPN\350\277\236\346\216\245/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \347\256\241\347\220\206/\347\256\241\347\220\206 SSL \346\234\215\345\212\241\347\253\257/\351\205\215\347\275\256\350\256\277\351\227\256\346\216\247\345\210\266\347\255\226\347\225\245.md" index 7b353ac28409..6ac9e52f12eb 100644 --- "a/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/VPN\350\277\236\346\216\245/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \347\256\241\347\220\206/\347\256\241\347\220\206 SSL \346\234\215\345\212\241\347\253\257/\351\205\215\347\275\256\350\256\277\351\227\256\346\216\247\345\210\266\347\255\226\347\225\245.md" +++ "b/product/\350\256\241\347\256\227\344\270\216\347\275\221\347\273\234/VPN\350\277\236\346\216\245/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \351\205\215\347\275\256\346\214\207\345\215\227/SSL VPN \347\256\241\347\220\206/\347\256\241\347\220\206 SSL \346\234\215\345\212\241\347\253\257/\351\205\215\347\275\256\350\256\277\351\227\256\346\216\247\345\210\266\347\255\226\347\225\245.md" @@ -21,7 +21,7 @@ ![](https://qcloudimg.tencent-cloud.cn/raw/a3d36f14dbf9f0271aa8caa537ae5dd6.png) 4. 在实例详情页面单击**访问控制**,并单击**新增策略**。 ![](https://qcloudimg.tencent-cloud.cn/raw/df5a66ff10ca4ad2a84ee1d831423ae4.png) -5.在弹出的对话框中配置访问控制策略。 +5. 在弹出的对话框中配置访问控制策略。 ![](https://qcloudimg.tencent-cloud.cn/raw/c3c12cbc8818146ef0f2a8cc5fbde561.png) From 23331a631f2f3a9855cb821a98318af49685333b Mon Sep 17 00:00:00 2001 From: vsmxshen <83449598+vsmxshen@users.noreply.github.com> Date: Thu, 24 Aug 2023 14:54:42 +0800 Subject: [PATCH 20/27] =?UTF-8?q?Create=20JSON=20=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E5=91=8A=E8=AD=A6=E6=95=B0=E6=8D=AE=E8=A7=A3=E6=9E=90.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...60\346\215\256\350\247\243\346\236\220.md" | 277 ++++++++++++++++++ 1 file changed, 277 insertions(+) create mode 100644 "product/\345\256\211\345\205\250\346\234\215\345\212\241/\344\270\273\346\234\272\345\256\211\345\205\250/\344\272\221\351\225\234\350\275\257\344\273\266\347\233\270\345\205\263\350\257\264\346\230\216/JSON \346\240\274\345\274\217\345\221\212\350\255\246\346\225\260\346\215\256\350\247\243\346\236\220.md" diff --git "a/product/\345\256\211\345\205\250\346\234\215\345\212\241/\344\270\273\346\234\272\345\256\211\345\205\250/\344\272\221\351\225\234\350\275\257\344\273\266\347\233\270\345\205\263\350\257\264\346\230\216/JSON \346\240\274\345\274\217\345\221\212\350\255\246\346\225\260\346\215\256\350\247\243\346\236\220.md" "b/product/\345\256\211\345\205\250\346\234\215\345\212\241/\344\270\273\346\234\272\345\256\211\345\205\250/\344\272\221\351\225\234\350\275\257\344\273\266\347\233\270\345\205\263\350\257\264\346\230\216/JSON \346\240\274\345\274\217\345\221\212\350\255\246\346\225\260\346\215\256\350\247\243\346\236\220.md" new file mode 100644 index 000000000000..de737f840d83 --- /dev/null +++ "b/product/\345\256\211\345\205\250\346\234\215\345\212\241/\344\270\273\346\234\272\345\256\211\345\205\250/\344\272\221\351\225\234\350\275\257\344\273\266\347\233\270\345\205\263\350\257\264\346\230\216/JSON \346\240\274\345\274\217\345\221\212\350\255\246\346\225\260\346\215\256\350\247\243\346\236\220.md" @@ -0,0 +1,277 @@ +本文档将为您介绍在 [告警设置 ](https://console.cloud.tencent.com/cwp/setting) > **机器人通知**设置接收 JSON 格式告警数据后,用户将收到的各类告警的传输字段及说明。 + +>? +>- 目前机器人通知处于灰度状态,仅对明确有该需求的客户开放,若您希望实时接收主机安全 webhook 机器人告警,请 [联系我们](https://cloud.tencent.com/online-service) 开白使用。 +>- [告警设置 ](https://console.cloud.tencent.com/cwp/setting) > **机器人通知**与消息中心的机器人相互独立,没有关联。 + +## 公共字段 +#### 示例 +``` +{ + "uin": "", + "nickname": "", + "server": "", + "instance_id": "", + "region": "", + "time": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| uin | 用户 uin | +| nickname | 用户昵称 | +| server | 机器 ip [机器别名] | +| instance_id | 机器实例 id | +| region | 机器所在区域 | +| time | 事件时间 | + + +## 异常登录 +#### 示例 +``` +{ + "event_type": "异常登录", + "src_ip": "", + "area": "", + "level": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| src_ip | 来源 ip | +| area | 来源地 | +| level |危胁等级| + +## 密码破解 +#### 示例 +``` +{ + "event_type": "密码破解", + "src_ip": "", + "area": "", + "count": "", + "banned": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| src_ip | 来源 ip | +| area | 来源地 | +|countl |尝试次数| +|banned |阻断状态| + + +## 文件查杀-恶意文件 +#### 示例 +``` +{ + "event_type": "恶意文件", + "file_type": "", + "path": "", + "level": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| file_type | 文件类型 | +|countl |文件路径| +|level |威胁等级| + + +## 文件查杀-异常进程 +#### 示例 +``` +{ + "event_type": "异常进程", + "pid": "", + "path": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| pid | 进程 id | +|path |进程路径| + +## 恶意请求 +#### 示例 +``` +{ + "event_type": "恶意请求", + "url": "", + "count": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| url | 恶意域名 | +|count |请求次数| + +## 高危命令 +#### 示例 +``` +{ + "event_type": "高危命令", + "cmd": "", + "level": "", + "status": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| cmd | 命令内容 | +|level |威胁等级| +|status |处理状态| + +## 本地提权 +#### 示例 +``` +{ + "event_type": "本地提权", + "user": "", + "process": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| user | 提权用户 | +|process |提权进程| + +## 反弹shell +#### 示例 +``` +{ + "event_type": "反弹Shell", + "process": "", + "dst_ip": "", + "dst_port": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +| process | 提权进程 | +|dst_ip |目标主机| +|dst_port|目标端口| + +## java内存马 +#### 示例 +``` +{ + "event_type": "java内存马", + "type": "", + "pid": "", + "argv": "", + "class_name": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|type|内存马类型| +|pid|进程 id| +|argv|进程参数| +|class_name|内存马 class 名称| + +## 核心文件监控 +#### 示例 +``` +{ + "event_type": "核心文件", + "rule_name": "", + "exe_path": "", + "file_path": "", + "count": "", + "level": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|rule_name|命中规则名称| +|exe_path|进程路径| +|file_path|文件路径| +|count|事件数量| +|level|威胁等级| + +## 网络攻击 +#### 示例 +``` +{ + "event_type": "网络攻击", + "src_ip": "", + "city": "", + "vul_name": "", + "dst_port": "", + "status": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|src_ip|来源 ip| +|city|来源城市| +|vul_name|漏洞名称| +|dst_port|目标端口| +|status|攻击状态| + +## 客户端离线 +#### 示例 +``` +{ + "event_type": "客户端离线", + "offline_hour": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|offline_hour|客户端离线时长| + +## 客户端卸载 +``` +{ + "event_type": "客户端卸载" +} +``` + +## 漏洞通知 +#### 示例 +``` +{ + "event_type": "漏洞", + "category": "", + "vul_name": "", + "level": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|category|漏洞分类| +|vul_name|漏洞名称| +|level|威胁等级| + +## 基线通知 +#### 示例 +``` +{ + "event_type": "基线", + "category": "", + "rule_name": "", + "level": "" +} +``` +#### 字段说明 +| 字段名称 | 说明 | +| ----------- | ------------------ | +|category|基线分类| +|rule_name|规则名称| +|level|威胁等级| From a2b9bd685a0ccfb0fc4449275cb5f2434e876302 Mon Sep 17 00:00:00 2001 From: vickytong123 <108515634+vickytong123@users.noreply.github.com> Date: Thu, 24 Aug 2023 15:11:48 +0800 Subject: [PATCH 21/27] =?UTF-8?q?Update=20=E5=B7=A5=E4=BD=9C=E6=B5=81.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\267\245\344\275\234\346\265\201.md" | 1404 ++++++++++++++++- 1 file changed, 1400 insertions(+), 4 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" index 19a20de1ffb0..75f5f3c1ba43 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" @@ -2649,22 +2649,32 @@ Filter:区间开始时间和区间结束时间需成对使用 - + - + - + + + + + + + + + + + - + @@ -4971,4 +4981,1390 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ ::: +### 管理后台获取实例列表 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/DescribeProcessManageInstances +``` + +#### Query 参数 +
CurrentNodeId string当前审批节点 ID任务所属审批节点id ID
CurrentNodeName string当前审批节点名称任务所属审批节点名称
CurrentNodeType int当前审批节点类型任务所属审批节点类型
ApprovalNodeNamestring当前正在审批节点名称,IsCompleted=true时为空
ApprovalNodeIdstring当前正在审批节点Id,同上
TaskId string当前审批节点的任务 ID审批节点的任务 ID
FlowCode
+ + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + +入参为小驼峰 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
pageSizeint页面大小 默认10
pageNoint页码 默认1
orderBystring排序属性 start_time:按照实例发起时间排序
orderTypestring排序规则 desc:倒序(默认) asc:正序
filterFilter过滤条件
userInfoUserInfo当前操作人
+ +#### Filter + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型含义
FlowNameString流程标题关键字
FlowStarterListlist<string>流程发起人Id列表
CurrentApproverListlist<string>流程审批人Id列表
ProcessKeyListlist<string>流程标识列表
ApproveStatusint审批状态 +1:流转中(只有审批中) +2:已结束(流程审批通过、拒绝、废弃) +3:已终止(只有终止) +
FlowGroupListlist<string>流程分组列表
FlowStartTimeint流程发起区间的开始时间时间戳
FlowEndTimeint流程发起区间的结束时间时间戳
+ +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
recordslist<ManageInstance>管理后台实例列表
+ +##### ManageInstance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型描述
InstanceIdstring流程实例Id
Namestring流程标题
StartedBystring发起人名称
CurrentApproverstring当前审批人,以,分割
StartTimeint流程实例发起时间
EndTimeint流程实例结束时间
CurrentNodeIdstring当前审批节点id
CurrentNodeNamestring当前审批节点名称
ApproveStatusint审批状态
FlowCodestring流程编码
FlowVersionstring流程版本
ProcessKeystring流程标识
+ +#### Body 参数示例 + +::: js +{ + "pageNo": 1, + "pageSize": 3, + "orderBy": "start_time", + "orderType": "asc", + "filter": { + "FlowName": "kongtest1", + "ApproveStatus": 2 + }, + "userInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "records": [ + { + "InstanceId": "1554744048959025153", + "Name": "administrator提交的kongtest1", + "StartedBy": "", + "CurrentApprover": "", + "StartTime": 1659514843000, + "EndTime": 1659514864697, + "CurrentNodeId": "", + "CurrentNodeName": "", + "ApproveStatus": 2, + "FlowCode": "1554743879884996610", + "FlowVersion": "2.0", + "ProcessKey": "flow_021", + "_id": "1554744048959025153" + }, + { + "InstanceId": "1555464781915541505", + "Name": "administrator提交的kongtest1", + "StartedBy": "", + "CurrentApprover": "", + "StartTime": 1659686679000, + "EndTime": 1680752525298, + "CurrentNodeId": "", + "CurrentNodeName": "", + "ApproveStatus": 2, + "FlowCode": "1554746726240866307", + "FlowVersion": "3.0", + "ProcessKey": "flow_021", + "_id": "1555464781915541505" + }, + { + "InstanceId": "1555464860365803521", + "Name": "administrator提交的kongtest1", + "StartedBy": "", + "CurrentApprover": "", + "StartTime": 1659686697000, + "EndTime": 1663817493856, + "CurrentNodeId": "", + "CurrentNodeName": "", + "ApproveStatus": 2, + "FlowCode": "1554746726240866307", + "FlowVersion": "3.0", + "ProcessKey": "flow_021", + "_id": "1555464860365803521" + } + ], + "total": 35, + "pageSize": 3, + "pageNo": 1, + "requestId": "94f3f909fd6c4" + } +::: + + +### 管理后台实例操作列表 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/DescribeProcessManageInstanceOperation +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
NodeIdstring当前节点Id
InstanceIdstring流程实例Id
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型描述
CanRollBackbool是否可以回退
CanRevokebool是否可以撤销
CanTurnTaskbool是否可以转办
CanSkipbool是否可以跳过
+ +#### Body 参数示例 + +::: js +{ + "InstanceId": "1659127010815275009", + "NodeId": "approvalNode1679553458359", + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} + +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "44aa034ddb3fe", + "Data": { + "CanRollBack": true, + "CanRevoke": false, + "CanTurnTask": true, + "CanSkip": true + } + } +} +::: + + +### 管理后台实例任务列表 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/DescribeManageInstanceTaskList +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdstring流程实例Id
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
TaskListlist<ManageTask>管理后台任务列表
+ +##### ManageTask + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型描述
NodeNamestring节点名称
NodeIdstring节点Id
TaskIdstring任务Id
TaskStatusint任务状态:1待办、2同意、3拒绝、4转办
Assigneestring审批人名称
StartTimeint任务开始时间
EndTimeint任务结束时间
+ +#### Body 参数示例 + +::: js +{ + "InstanceId": "1679422724690472962", + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "f14cec2a5571a", + "Data": { + "TaskList": [ + { + "NodeName": "审批节点b2", + "NodeId": "approvalNode1679553458359", + "TaskId": "1683772692872503297", + "TaskStatus": 1, + "Assignee": "kongtest", + "StartTime": 1690277668000 + }, + { + "NodeName": "审批节点b3", + "NodeId": "approvalNode1679553039308", + "TaskId": "1659127330345742339", + "TaskStatus": 3, + "Assignee": "kongtest", + "StartTime": 1684401755000, + "EndTime": 1684401776542 + }, + { + "NodeName": "处理节点", + "NodeId": "handleNode1672371262590", + "TaskId": "1659127012073566209", + "TaskStatus": 2, + "Assignee": "kongtest", + "StartTime": 1684401679000, + "EndTime": 1684401709304 + } + ] + } + } +} +::: + + +### 管理后台跳过操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageSkipTask +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdstring实例Id
TaskIdstring任务Id
ButtonActionint操作选项,1:提交,2:同意,3:拒绝
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否跳过成功
+ +#### Body 参数示例 + +::: js +{ + "InstanceId": "1679422724690472962", + "TaskId": "1681560241249259522", + "ButtonAction": 2, + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": false + } + } +} +::: + + +### 管理后台撤销操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageRevokeProcessList +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdListlist<string>流程实例Id列表
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
RevokeResponseListlist<RevokeResp>是否撤销成功
+ +##### RevokeResp + + + + + + + + + + + + + + + + + + + + + + +
字段类型描述
InstanceIdstring实例Id
IsCanRevokeboolean是否可以撤销
RevokeStatusboolean撤销结果
+ +#### Body 参数示例 + +::: js +{ + "InstanceIdList": [ + "1679422724690472962" + ], + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "RevokeResponseList": [ + { + "InstanceId": "1659127330345742339", + "IsCanRevoke": true, + "RevokeStatus": true + } + ] + } + } +} +::: + + +### 管理后台终止操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageStopProcessList +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdListlist<string>流程实例Id列表
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否终止成功
+ +#### Body 参数示例 + +::: js +{ + "InstanceIdList": [ + "1679422724690472962" + ], + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": false + } + } +} +::: + + +### 管理后台作废操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageAbandonProcessList +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdListlist<string>流程实例Id列表
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否作废成功
+ +#### Body 参数示例 + +::: js +{ + "InstanceIdList": [ + "1679422724690472962" + ], + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": false + } + } +} +::: + + +### 管理后台转办操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageTurnTask +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdstring实例Id
TaskIdstring任务Id
TurnToUserIdstring转办目标人Id
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否转办成功
+ +#### Body 参数示例 + +::: js +{ + "InstanceId": "1678612486675296257", + "TaskId": "1678612489120575490", + "TurnToUserId": "1558049980829474819", + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": false + } + } +} +::: + + +### 管理后台回退操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageRollBackTask +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
TaskIdstring任务Id
TargetNodeIdstring目标节点Id
TargetActTaskIdstring目标ActTaskId
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否回退成功
+ +#### Body 参数示例 + +::: js +{ + "TaskId": "1678651685923254273", + "TargetNodeId": "approvalNode1673407379378", + "TargetActTaskId": "1678651542943625223", + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": true + } + } +} +::: + + +### 管理后台删除操作 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ManageStopAndClearProcessInstance +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### Body 参数 + + + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
InstanceIdstring实例Id
UserInfoUserInfo当前操作人
+ + +#### 返回参数 + + + + + + + + + + + + +
字段类型描述
Statusbool是否删除成功
+ +#### Body 参数示例 + +::: js +{ + "InstanceId": "1678612486675296257", + "UserInfo": { + "UserId": "1558049980829474819", + "Type": 4 + } +} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "38cdccc5aaa74", + "Data": { + "Status": true + } + } +} +::: + + +### 查询流程分组 +- 请求方式:POST +- 请求地址: +```html +https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/DescribeFlowGroupFolders +``` + +#### Query 参数 + + + + + + + + + + + + + + +
字段类型是否必填描述
envTypestringweda 环境类型,pre:预览环境(对应流程未发布),prod:正式环境(对应流程已发布)
+ + +#### 返回参数 + + + + + + + + + + + + + +
字段类型描述
GroupFolderslist<GroupFolder>流程分组列表
+ +##### GroupFolder + + + + + + + + + + + + + + + + + + +
字段类型是否必填描述
GroupNamestring分组名称
GroupIdstring分组Id
+ + +#### Body 参数示例 + +::: js +{} +::: + + + +#### 返回参数示例 + +::: js +{ + "Response": { + "RequestId": "c9f9271c124bd", + "Data": { + "GroupFolders": [ + { + "GroupName": "zhihhwang", + "GroupId": "1534138536125050881" + } + ] + } + } +} + +::: + From aadac989efd83380635372bfd5ec097dbbae79e8 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 15:19:59 +0800 Subject: [PATCH 22/27] =?UTF-8?q?Update=20=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=9B=B4=E8=BF=9E=E6=94=AF=E4=BB=98=E6=A8=A1=E6=9D=BF.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...57\344\273\230\346\250\241\346\235\277.md" | 252 +++++++++++++++++- 1 file changed, 251 insertions(+), 1 deletion(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" index 587be6b4c3f9..2005ab126a99 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" @@ -1 +1,251 @@ -x +本文将介绍如何通过微搭应用编辑器搭建微信支付小程序。 +>!通过模板中心下载的应用,因为小程序直连支付模版 APIs 需要关联开发者自己小程序 appid、商户号、商户 API 证书序列号、商户 API 私钥和 API V3 密钥,所以在搭建小程序时,需要将调用支付 APIs 的部分替换为开发者自身的信息。 + +## 操作步骤 +### 步骤1:创建小程序应用 +1. 登录 [微搭控制台](https://console.cloud.tencent.com/lowcode),进入**创建应用**页面,选择**新建自定义应用**。 +![](https://qcloudimg.tencent-cloud.cn/raw/4fae9e5d18c74db25d41eab6e9d850f9.png) +2. 进入应用后将名称录入完成应用创建。 +![](https://qcloudimg.tencent-cloud.cn/raw/b0cbd82d8945cb4740878099818f071a.png) + +### 步骤2:搭建首页,发起支付 +1. 进入**首页** > **设置**,配置页面样式,这里选择导航栏为白色,标题为黑色。 +2. 首页内容展示商品信息,选择用文本、数据列表和 Tab 栏组件搭建主要内容。 +![](https://qcloudimg.tencent-cloud.cn/raw/ab0dbb7cee0c5c490e4ad569246f0401.png) +3. 数据列表选择步骤1创建好的**微信支付商品信息**数据模型,配置好排序字段、方式、显示条数、分页等相关信息。 +![](https://qcloudimg.tencent-cloud.cn/raw/c3db0394321994b19698caf998c7bf3f.png) +4. 数据列表内显示对应内容组件,单击选择**绑定数据**。 +![](https://qcloudimg.tencent-cloud.cn/raw/a6d008c13398fbb0a72e41019e94bd95.png) +5. 接下来配置**支付**按钮,也是主要的功能展示,需要重点关注。 +6. 支付功能最简化模拟生成订单、支付商品、更新订单状态整个流程。按照微信支付接口要求,需要执行以下操作: +![](https://qcloudimg.tencent-cloud.cn/raw/7c6349e041ef4a06aa5984f1897e1247.png) + - **第一步:生成订单,为发起支付做准备。** + 单击**事件**,调用**微信支付模板订单数据**数据源**创建订单**方法,创建一个新的订单信息,传入对应商品名称、价格、支付状态,尤其是支付状态,在不同支付流程阶段,需要根据状态变化进行更新操作。 +>!支付状态字段为数字,1:表示未支付,2:表示已支付,3:表示退款中,4:表示已退款。 +> +![](https://qcloudimg.tencent-cloud.cn/raw/f79f6bddbcddc8803a6b1af158428f60.png) +创建订单成功后,新建一个文本变量 orderId。 +![](https://qcloudimg.tencent-cloud.cn/raw/75bf2f4daec351ee0a6f15f75de07604.png) +通过变量赋值的事件,将创建订单成功所返回值的数据唯一标识赋值给 orderId。 +![](https://qcloudimg.tencent-cloud.cn/raw/8837ba365c4b2305a5bfb9442d2dfe5d.png) +调用数据源方法,数据标识填入变量 orderId,查询订单信息。 +![](https://qcloudimg.tencent-cloud.cn/raw/41e00099855c617f85e35be8ab33953b.png) +查询成功回调,返回值赋值给提前设置好的全局变量,用于接下来发起支付时传输订单号。 +![](https://qcloudimg.tencent-cloud.cn/raw/f539c6f75644ccb04c6d82ca6265f372.png) + - **第二步:发起支付。** + 创建**微信支付-小程序**服务是完成功能搭建的关键,这里先整体介绍下服务创建流程与注意事项。 + 1. 创建微信支付 JSAPI 下单和申请退款方法时需要录入通知回调,通知回调有两种方式,一种是工作流创建,指通过工作流方式实现回调逻辑;另一种则是自有服务,可供放入微信支付工作流的回调 url,或者放入用户自定义回调逻辑的 url。当前微搭低代码暂时仅支持配置自有服务,云开发管理系统支持两种通知回调方式。所以这里选择自有服务。 +![](https://qcloudimg.tencent-cloud.cn/raw/33d3a8e2ae7b08ccdedd9d6882090992.png) + 2. 接下来到同账号下的云开发管理系统,安装**接收微信支付支付通知**这个工作流模板,并进入该模板。 +![](https://qcloudimg.tencent-cloud.cn/raw/0d6aef9a5fa5c410e3dcb274e6e2dee5.png) + 3. 选中节点名称为**收到微信支付事件时**的节点后,在右侧节点配置复制通知回调 url 至刚刚创建方法时,放置自有服务下的统一下单的入口。 +![](https://qcloudimg.tencent-cloud.cn/raw/03a3b96c92b722d8f63308ecd9f0e8bc.png) +![](https://qcloudimg.tencent-cloud.cn/raw/19773de82baf2071fb690c65ee19fe7d.png) + 4. 获取申请退款的回调 url 与统一下单的途径相同,唯一差别是在同账号下的云开发管理系统下,安装的是**接收微信支付退款通知**,至此小程序微信支付方法就创建完成了。 + ![](https://qcloudimg.tencent-cloud.cn/raw/9b16b21fb32101b565f2ca3c339a8d79.png) +>!一定要使用自己创建好的微信支付-小程序 APIs 服务,创建方法请务必参见 [小程序微信支付创建说明](https://docs.cloudbase.net/toolbox/datasource/weixin-pay)。 +> + 5. 选择订单和商品信息准备好后,接下来调用创建好的**微信支付-小程序 APIs**,JSAPI 下单,传入商品描述、商户订单号、支付总金额相关信息。 +![](https://qcloudimg.tencent-cloud.cn/raw/c51c0f9a717b2d9fd0d97e2c97eda5ad.png) +调用成功后,才能使用自定义方法,调用编辑器写好的发起支付命令,发起微信支付。(当支付失败或者未支付时,需将订单状态修改为未支付的状态) +![](https://qcloudimg.tencent-cloud.cn/raw/4d96741dc0f54b1032c9fcf01e4028ed.png) +应用调用如下图: +![](https://qcloudimg.tencent-cloud.cn/raw/937b91e65f55d71c44e3dc14ce5d5d07.png) + - **第三步:根据支付结果更新订单状态。** +**特别强调:** 微信支付成功和失败结果,并不会在发起支付后直接返回支付结果,而是通过在**微信支付-小程序**接口的**统一下单**回调函数中,异步通知支付结果,所以对订单支付结果的更新需要在**接收微信支付支付通知**工作流模板中操作。 +![](https://qcloudimg.tencent-cloud.cn/raw/39531be98983d1606824a5caed7d94d1.png) +进入工作流模板,添加**运行 JS 脚本**节点。 +![](https://qcloudimg.tencent-cloud.cn/raw/9b81743bf599f19727f91ac713f04dae.png) +并到对应节点配置下编辑脚本代码。 +![](https://qcloudimg.tencent-cloud.cn/raw/397cab847699cb50bce430a7d8e22651.png) +在下单的回调函数中,根据返回的订单号,更新支付状态。 +>?工作流中回调函数调用的环境类型,默认为 **prod 正式环境**,这里测试用的是预览环境,在应用发布后,记得修改为正式环境。 +>调用数据源方法时,需要将所属的环境 id 赋值到 env 属性。 +> +![](https://qcloudimg.tencent-cloud.cn/raw/f5169a45ef1005efc87028272e1d21a9.png) +``` +""use strict"; +const weda = require('@cloudbase/weda-scf-sdk'); +// 支付回调参数说明,全部参数请查阅:https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_5.shtml#返回值说明 +const { + id, // 通知ID + create_time, // 通知创建时间 + event_type, // 通知类型 + resource_type, // 通知数据类型 + summary, // 回调摘要 + resource, // 通知数据 +} = wepayTrigger.output; +const { + amount, // 订单金额 + appid, // 应用ID + attach, // 附加数据 + bankType, // 付款银行 + mchid, // 商户号 + outTradeNo, // 商户订单号 + payer, // 支付者 + promotionDetail, // 优惠功能 + successTime, // 支付完成时间 + tradeState, // 交易状态 + tradeStateDesc, // 交易状态描述 + tradeType, // 交易类型 + transactionId // 微信支付订单号 +} = resource; +const { + currency, // 货币类型 + payerCurrency, // 用户支付币种 + payerTotal, // 用户支付金额 + total // 总金额 +} = amount; + +/** + * 在这里编写支付结果处理逻辑 + */ +weda.init({ + // 调用的数据源所属环境, 该值亦可以在调用数据源方法时单独指定 + env: 'lowcode-****************', + // 可选值有 pre 体验环境, prod 正式环境。默认为正式环境 + envType: 'pre', +}) +const result = event_type === "TRANSACTION.SUCCESS" && await weda.callModel({ + //微信支付模板订单数据数据源标识 + name: 'wxzfmbddsj_xxvl80r', + //调用更新多条数据方法,根据订单号匹配更新支付状态为2(已支付) + methodName: 'wedaBatchUpdate', + params: { + where: [{ + key: 'ddh', + rel: 'eq', + val: outTradeNo, + }], + record: { + zfzt: 2, + } + } +}); +console.log(result, 'result') + +``` + +### 步骤3:搭建订单管理页,支持退款 +步骤2已完成发起支付和生成订单的完整流程,接下来针对不同订单状态来模拟订单流转,完成发起退款操作。 +>! 订单页内容显示全部订单、已支付订单、未支付订单、已退款订单,**该页面主要演示退款功能,所以未根据订单所属人进行数据记录和筛选**,实际应用中开发者可以根据用户 openid 或手机号等用户唯一标识做数据存储和筛选。 +> +订单页选择用选项卡和 Tab 栏进行搭建,选项卡内放入数据列表,数据列表选择步骤1创建好的**微信支付模板订单数据**数据模型,根据不同选项,配置好数据筛选条件、排序字段、方式、显示条数、分页等相关信息,如已支付页面,数据以支付状态等于2来筛选,其余页面逻辑类似。 +![](https://qcloudimg.tencent-cloud.cn/raw/0cfa6d5b7eff9c53d6efd56496d67ba1.png) +接下来重点介绍下发起退款流程,主要包括发起退款、更新订单状态、退款通知、查询退款结果、再次更新订单状态。 +按照微信退款接口要求,退款需要执行以下操作: +![](https://qcloudimg.tencent-cloud.cn/raw/5e711de6e88ec853db1272fa46570b64.png) +1. 已支付订单,显示申请退款按钮。 +>!支付状态字段为数字,1:表示未支付,2:表示已支付,3:表示退款中,4:表示已退款。 +> +申请退款按钮的显示条件为:**支付状态字段等于2时**,显示退款按钮。 +![](https://qcloudimg.tencent-cloud.cn/raw/0f093ae3c8710ea369363d84d9af851e.png) +2. 单击**申请退款**。 +首先打开弹窗,由用户确认是否发起退款。 +![](https://qcloudimg.tencent-cloud.cn/raw/4d2f965cc924ab81f424d0b2feb87d22.png) +弹窗确认状态根据 confirm 字段判断,若为 true,则确定退款;若为 false,则取消退款,用逻辑分支绑定表达式为 `If(event.detail?.confirm === true, true, false)`。 +![](https://qcloudimg.tencent-cloud.cn/raw/b2894c38eae2a289a79f31b277d23e97.png) +确认发起退款后,调用 APIs **微信支付模板功能申请退款**方法。 +![](https://qcloudimg.tencent-cloud.cn/raw/c6b79a19e1cac4fbb781fc6672157121.png) +3. 根据退款结果更新订单状态。 +申请退款接口调用成功的回调,更新支付状态为3退款中。 +![](https://qcloudimg.tencent-cloud.cn/raw/bac27111a82d81494f66efd02be5f286.png) +4. 最后对数据列表进行刷新,及时更新订单状态。 +![](https://qcloudimg.tencent-cloud.cn/raw/3bfad1efd4f312a5e165003bc39ff456.png) +>!退款成功和失败结果,并不会在发起退款后直接返回结果,而是通过在**微信支付-小程序**接口的**申请退款**回调函数中,异步通知退款结果,所以对订单支付结果的更新,需要在**接收微信支付退款通知**工作流模板中操作。 +> +添加**运行 JS 脚本**的节点,并编辑。 +![](https://qcloudimg.tencent-cloud.cn/raw/9b81743bf599f19727f91ac713f04dae.png) +并到对应节点配置下编辑脚本代码。 +![](https://qcloudimg.tencent-cloud.cn/raw/e098c4bc5a4146846761350a1cae6f48.png) +**申请退款函数**中,接收到退款通知后,根据返回的退款值,更新订单状态,失败更新为2已支付,退款成功更新为4已退款。 +``` +""use strict"; +const weda = require('@cloudbase/weda-scf-sdk'); +// 支付回调参数说明,全部参数请查阅:https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_5.shtml#返回值说明 +const { + id, // 通知ID + create_time, // 通知创建时间 + event_type, // 通知类型 + resource_type, // 通知数据类型 + summary, // 回调摘要 + resource, // 通知数据 +} = wepayTrigger.output; +const { + amount, // 订单金额 + appid, // 应用ID + attach, // 附加数据 + bankType, // 付款银行 + mchid, // 商户号 + outTradeNo, // 商户订单号 + payer, // 支付者 + promotionDetail, // 优惠功能 + successTime, // 支付完成时间 + tradeState, // 交易状态 + tradeStateDesc, // 交易状态描述 + tradeType, // 交易类型 + transactionId // 微信支付订单号 +} = resource; +const { + currency, // 货币类型 + payerCurrency, // 用户支付币种 + payerTotal, // 用户支付金额 + total // 总金额 +} = amount; + +/** + * 在这里编写支付结果处理逻辑 + */ +weda.init({ + // 调用的数据源所属环境, 该值亦可以在调用数据源方法时单独指定 + env: 'lowcode-**************', + // 可选值有 pre 体验环境, prod 正式环境。默认为正式环境 + envType: 'pre', +}) +// 如果退款状态是退款关闭或退款异常,重置订单状态为已支付,结束轮询 +if(event_type === "REFUND.CLOSED" || event_type === "REFUND.ABNORMAL") { + await updateOrderStatus(2); +} else if(event_type === "REFUND.SUCCESS") { + //退款成功,更新订单状态为退款成功,结束轮询 + await updateOrderStatus(4); +} + +// 更新订单状态 +async function updateOrderStatus(zfzt){ + const statusRes = await weda.callModel({ + //微信支付模板订单数据数据源标识 + name: 'wxzfmbddsj_xxvl80r', + //调用更新多条数据方法 + methodName: 'wedaBatchUpdate', + params: { + where: [{ + key: 'ddh', + rel: 'eq', + val: outTradeNo, + }], + record: { + zfzt, + } + } + }); + console.log('>>>statusRes<<<', statusRes) + return statusRes +} +``` +>? 工作流中回调函数调用数据源方法的环境类型,默认为 **prod 正式环境**,这里测试用的是预览环境,在应用发布后,记得修改为正式环境。 +>调用数据源方法时,需要将所属的环境 id 赋值到 env 属性。 +5. 调试样式,发布应用。 +选择发布小程序,如果测试验证可以通过体验版进行发布。 +如果是体验版,在**JSAPI下单**和**申请退款**方法的工作流回调函数中,配置对应的环境类型。 + 1. JSAPI 下单的回调函数配置位置。 +![](https://qcloudimg.tencent-cloud.cn/raw/397cab847699cb50bce430a7d8e22651.png) + 2. 配置环境类型。 +![](https://qcloudimg.tencent-cloud.cn/raw/09e79416706dc54a85129faadee59f2f.png) + 3. 申请退款的回调函数。 +![](https://qcloudimg.tencent-cloud.cn/raw/4f6138d6c2c5c0ce008e5c9e31aea6b2.png) + 4. 配置环境类型。 +![](https://qcloudimg.tencent-cloud.cn/raw/d6d15a55c9336516ee907bd9ba2be340.png) + 5. 发布小程序。 +![](https://qcloudimg.tencent-cloud.cn/raw/7af97a44e5ec152bc7774e6990dbf9df.png) + +至此,已模拟完成一个简单的商品售卖支付和退款完整流程,实际应用搭建时,您可以根据自己的业务特性,灵活调整各功能模块流程。 From 61da1b90f4803c434575b555cfb7db006c3f00ac Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 15:20:43 +0800 Subject: [PATCH 23/27] =?UTF-8?q?Update=20=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=9B=B4=E8=BF=9E=E6=94=AF=E4=BB=98=E6=A8=A1=E6=9D=BF.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" index 2005ab126a99..faa562a771dd 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\346\234\200\344\275\263\345\256\236\350\267\265/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\345\212\237\350\203\275\345\261\225\347\244\272\346\250\241\346\235\277/\345\260\217\347\250\213\345\272\217\347\233\264\350\277\236\346\224\257\344\273\230\346\250\241\346\235\277.md" @@ -1,5 +1,5 @@ 本文将介绍如何通过微搭应用编辑器搭建微信支付小程序。 ->!通过模板中心下载的应用,因为小程序直连支付模版 APIs 需要关联开发者自己小程序 appid、商户号、商户 API 证书序列号、商户 API 私钥和 API V3 密钥,所以在搭建小程序时,需要将调用支付 APIs 的部分替换为开发者自身的信息。 +>!通过模板中心下载的应用,因为小程序直连支付模板 APIs 需要关联开发者自己小程序 appid、商户号、商户 API 证书序列号、商户 API 私钥和 API V3 密钥,所以在搭建小程序时,需要将调用支付 APIs 的部分替换为开发者自身的信息。 ## 操作步骤 ### 步骤1:创建小程序应用 From 6895078ca1bab18cf9c519eef9ff24cc8067bb4a Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 15:42:31 +0800 Subject: [PATCH 24/27] =?UTF-8?q?Create=20=E5=BE=AE=E4=BF=A1=E6=94=AF?= =?UTF-8?q?=E4=BB=98-=E5=B0=8F=E7=A8=8B=E5=BA=8F.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" | 1 + 1 file changed, 1 insertion(+) create mode 100644 "product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" new file mode 100644 index 000000000000..8b137891791f --- /dev/null +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" @@ -0,0 +1 @@ + From 5648dcee4367e4602f4cae81c6823786b7b23996 Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 16:16:37 +0800 Subject: [PATCH 25/27] =?UTF-8?q?Update=20=E5=B7=A5=E4=BD=9C=E6=B5=81.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\267\245\344\275\234\346\265\201.md" | 76 +++++++++---------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" index 75f5f3c1ba43..fbcebb51de22 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" @@ -2649,7 +2649,7 @@ Filter:区间开始时间和区间结束时间需成对使用 CurrentNodeId string -任务所属审批节点id ID +任务所属审批节点 ID CurrentNodeName @@ -2664,12 +2664,12 @@ Filter:区间开始时间和区间结束时间需成对使用 ApprovalNodeName string -当前正在审批节点名称,IsCompleted=true时为空 +当前正在审批节点名称,IsCompleted=true 时为空 ApprovalNodeId string -当前正在审批节点Id,同上 +当前正在审批节点 ID,同上 TaskId @@ -5008,7 +5008,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ #### Body 参数 -入参为小驼峰 +入参为小驼峰。 @@ -5022,25 +5022,25 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + - + - + @@ -5072,12 +5072,12 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + @@ -5087,10 +5087,10 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - @@ -5136,7 +5136,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5151,7 +5151,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5166,7 +5166,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5313,13 +5313,13 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + @@ -5428,7 +5428,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5470,17 +5470,17 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + - + @@ -5592,19 +5592,19 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + - + @@ -5698,7 +5698,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5735,7 +5735,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5823,7 +5823,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -5917,7 +5917,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -6011,19 +6011,19 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + - + @@ -6117,19 +6117,19 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + - + - + @@ -6223,7 +6223,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - + @@ -6335,7 +6335,7 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ - +
pageSize int 页面大小 默认10页面大小,默认10
pageNo int 页码 默认1页码,默认1
orderBy string 排序属性 start_time:按照实例发起时间排序排序属性,start_time:按照实例发起时间排序
orderType string 排序规则 desc:倒序(默认) asc:正序排序规则。
desc:倒序(默认)
asc:正序
filter
FlowStarterList list<string>流程发起人Id列表流程发起人 ID 列表
CurrentApproverList list<string>流程审批人Id列表流程审批人 ID 列表
ProcessKeyList
ApproveStatus int审批状态 -1:流转中(只有审批中) -2:已结束(流程审批通过、拒绝、废弃) -3:已终止(只有终止) +审批状态。
+1:流转中(只有审批中)
+2:已结束(流程审批通过、拒绝、废弃)
+3:已终止(只有终止)
InstanceId string流程实例Id流程实例 ID
Name
CurrentApprover string当前审批人,以,分割当前审批人,以 `,` 分割
StartTime
CurrentNodeId string当前审批节点id当前审批节点 ID
CurrentNodeNameNodeId string 当前节点Id当前节点 ID
InstanceId string 流程实例Id流程实例 ID
UserInfoInstanceId string 流程实例Id流程实例 ID
UserInfo
NodeId string节点Id节点 ID
TaskId string任务Id任务 ID
TaskStatus int任务状态:1待办、2同意、3拒绝、4转办任务状态:
1:待办
2:同意
3:拒绝
4:转办
AssigneeInstanceId string 实例Id实例 ID
TaskId string 任务Id任务 ID
ButtonAction int 操作选项,1:提交,2:同意,3:拒绝操作选项。
1:提交
2:同意
3:拒绝
UserInfoInstanceIdList list<string> 流程实例Id列表流程实例 ID 列表
UserInfo
InstanceId string实例Id实例 ID
IsCanRevokeInstanceIdList list<string> 流程实例Id列表流程实例 ID 列表
UserInfoInstanceIdList list<string> 流程实例Id列表流程实例 ID 列表
UserInfoInstanceId string 实例Id实例 ID
TaskId string 任务Id任务 ID
TurnToUserId string 转办目标人Id转办目标人 ID
UserInfoTaskId string 任务Id任务 ID
TargetNodeId string 目标节点Id目标节点 ID
TargetActTaskId string 目标ActTaskId目标 ActTaskId
UserInfoInstanceId string 实例Id实例 ID
UserInfo
GroupId string分组Id分组 ID
From 5d03ee883a9abc03f845385ca5e3b3228769ee3b Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 16:52:13 +0800 Subject: [PATCH 26/27] =?UTF-8?q?Update=20=E5=B7=A5=E4=BD=9C=E6=B5=81.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\345\267\245\344\275\234\346\265\201.md" | 2 -- 1 file changed, 2 deletions(-) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" index fbcebb51de22..f43945e2bd4f 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/API \346\226\207\346\241\243/\345\267\245\344\275\234\346\265\201 OpenAPI/\346\234\215\345\212\241\347\253\257API/\345\267\245\344\275\234\346\265\201.md" @@ -6313,7 +6313,6 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ GroupFolders list<GroupFolder> -是 流程分组列表 @@ -6323,7 +6322,6 @@ https://{envId}.{region}.tcb-api.tencentcloudapi.com/weda/workflow/v1/{envType}/ 字段 类型 -是否必填 描述 From 4a962222109796dacb1b6ad8095d406c960a416a Mon Sep 17 00:00:00 2001 From: v-zuofanye <95069352+v-zuofanye@users.noreply.github.com> Date: Thu, 24 Aug 2023 17:00:58 +0800 Subject: [PATCH 27/27] =?UTF-8?q?Update=20=E5=BE=AE=E4=BF=A1=E6=94=AF?= =?UTF-8?q?=E4=BB=98-=E5=B0=8F=E7=A8=8B=E5=BA=8F.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0-\345\260\217\347\250\213\345\272\217.md" | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" index 8b137891791f..3d834b395c80 100644 --- "a/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" +++ "b/product/\347\247\273\345\212\250\344\270\216\351\200\232\344\277\241/\344\272\221\345\274\200\345\217\221\344\275\216\344\273\243\347\240\201\345\271\263\345\217\260/\344\272\247\345\223\201\347\256\200\344\273\213/\346\225\260\346\215\256\346\272\220/API/\345\276\256\344\277\241\346\224\257\344\273\230-\345\260\217\347\250\213\345\272\217.md" @@ -1 +1,54 @@ +微信支付-小程序开放服务,基于普通商户身份,提供直连模式-小程序基础支付接口能力,包括 JSAPI 下单、查询订单、小程序调起支付、申请退款、查询退款、申请交易账单等。 +[点击查看小程序支付 API 列表](https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_8_3.shtml) +![](https://qcloudimg.tencent-cloud.cn/raw/4fa38d5e6d6680b34b2ecaba094bac86.png) +## 创建微信支付-小程序 +### 准备工作 +微信支付-小程序(以下简称小程序支付)服务,支持普通商户的直连模式,详细说明请参见 [小程序支付接入前准备](https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_8_1.shtml)。 +>!完成支付业务需要严格遵守微信支付平台的规范,建议详细参见 [**接入前准备**](https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_8_1.shtml),充分了解微信支付设计要求。 + +创建服务前,需要准备好一个**非个人主体微信小程序**以及**微信支付普通商户号**,两者之间提前做好绑定。 +相关帮助文档: +- [通过微搭快速注册小程序](https://cloud.tencent.com/document/product/1301/57644) +- [小程序注册](https://mp.weixin.qq.com/wxopen/waregister?action=step1&source=mpregister&token=&lang=zh_CN) +- [注册商户号](https://pay.weixin.qq.com/index.php/apply/applyment_home/guide_normal) +- [商户号绑定 AppID](https://pay.weixin.qq.com/static/pay_setting/appid_protocol.shtml)。 + + +### 步骤1:新建服务 +在云开发管理系统内,编辑低码应用时,进入**数据源** > **APIs**,选择新建微信支付-小程序服务。 +![](https://qcloudimg.tencent-cloud.cn/raw/16ad9647d2158fdb2fd50ac5cedd8d33.png) + +### 步骤2:参数配置 +配置接口调用依赖的参数,包括 AppID、支付商户号、商户 API 证书序列号([什么是商户 API 证书以及如何获取](https://kf.qq.com/faq/161222NneAJf161222U7fARv.html))、商户 API 私钥([API 证书及密钥](https://kf.qq.com/faq/161222NneAJf161222U7fARv.html))、API V3 密钥([什么是 API V3 密钥](https://kf.qq.com/faq/180830E36vyQ180830AZFZvu.html))。 +![](https://qcloudimg.tencent-cloud.cn/raw/6aeb3fbb8e05d2830d9045f89092c821.png) +**通知回调**配置,是为小程序支付中 [JSAPI](https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_1.shtml) 和 [申请退款](https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_9.shtml) 接口配置回调通知 URL,支付/退款操作结果会通过该通知地址反馈给调用方,完成业务状态的更新。 +![](https://qcloudimg.tencent-cloud.cn/raw/4e348343a53c8485fd6fd943e52e4b7b.png) +小程序支付通知回调支持**工作流创建**和**开发者自有服务**两种配置方式。 +>!微搭低码平台暂时仅支持配置自有服务,云开发管理系统支持两种通知回调方式。 + +其中工作流创建方式依赖云开发工作流功能模块,在云开发管理系统内开发者可以选择创建新的工作流或者选择已有工作流。 +![](https://qcloudimg.tencent-cloud.cn/raw/7df552a1d60d508ee0ca7e663d73dcfc.png) +开发者自有服务支持录入自行搭建的回调地址,进而兼容开发者已有服务。 +![](https://qcloudimg.tencent-cloud.cn/raw/9fe94c92a2e850a2e054736c0927389e.png) + + +### 步骤3:方法使用 +创建好小程序支付服务后,支持在 [微搭低码平台](https://console.cloud.tencent.com/lowcode/overview/index) 和云开发管理系统中使用。云开发管理系统入口为:微信开发者工具 > 云开发控制台 > 更多 > 管理工具。 +![](https://qcloudimg.tencent-cloud.cn/raw/092de956ffcd6aae9236bbc8125569b9.png) +选择应用进入低码编辑页 > 数据源 > APIs,创建/查看小程序支付,具体用法请参见 [小程序支付管理模板](https://docs.cloudbase.net/toolbox/templates/weixin-pay) 和 [小程序直连支付功能展示](https://cloud.tencent.com/document/product/1301/96954)。 +支持低码开发时调用小程序支付接口,完成相关业务搭建。 +![](https://qcloudimg.tencent-cloud.cn/raw/3cc0c9473732deed6b214cf979d2394f.png) + +### 步骤4:编辑修改 +小程序支付方法中,支持对 **JSAPI 下单**和**申请退款**接口配置回调地址。选中对应方法,单击编辑后,对回调地址进行修改。 +![](https://qcloudimg.tencent-cloud.cn/raw/160193c55e5fec79d1dd822969ff43d3.png) +同时支持在**基本信息**编辑,单击编辑后对基本信息和参数配置进行修改。 +![](https://qcloudimg.tencent-cloud.cn/raw/77b488a72281f998529f3e16d5093ce4.png) + +### 步骤5:处理回调信息 +对于工作流回调地址,支持跳转至工作流编辑器,对支付/退款通知结果进行处理,例如根据支付结果更新支付和订单状态。 +![](https://qcloudimg.tencent-cloud.cn/raw/8b6a6fea209a10a886560916b4ab4a14.png) +进入工作流编辑器,接收回调后完成业务逻辑,参考 [工作流处理支付回调文档](https://docs.cloudbase.net/workflow/tutorial/wxpay/intro)。 +![](https://qcloudimg.tencent-cloud.cn/raw/c252cc9fdcb3602adde0af6d1214a128.png) +至此,已经完成小程序微信支付服务的创建,详细关联业务用法请参见 [小程序支付管理模板](https://docs.cloudbase.net/toolbox/templates/weixin-pay)、[小程序直连支付功能展示](https://cloud.tencent.com/document/product/1301/96954) 和 [微信支付事件工作流](https://docs.cloudbase.net/workflow/tutorial/wxpay/intro) 开发文档。