联犀 联犀
首页
使用指南
开发指南
技术分享
  • 中台接口 (opens new window)
  • 物联网接口 (opens new window)
在线体验 (opens new window)
  • gitee (opens new window)
  • github (opens new window)
  • 边缘网关-RHILEX (opens new window)
  • 边缘网关-opengw (opens new window)
首页
使用指南
开发指南
技术分享
  • 中台接口 (opens new window)
  • 物联网接口 (opens new window)
在线体验 (opens new window)
  • gitee (opens new window)
  • github (opens new window)
  • 边缘网关-RHILEX (opens new window)
  • 边缘网关-opengw (opens new window)
  • 应用开发

  • 后端开发

    • 服务开发

      • 服务初始化
      • 连接联犀服务
      • 中间件使用
      • 授权定义
        • 简述
        • 定义
          • 示例
        • 生成授权json
        • 导入授权
      • swagger使用
      • 数据库使用
      • 第三方接入
      • 插槽使用
      • 数据分析模块使用
      • 消息队列
      • 分布式缓存
      • 定时任务
      • 分布式存储使用
    • 物联网

  • 开发指南
  • 后端开发
  • 服务开发
godLei6
2024-10-23
目录

授权定义

# 简述

授权也就是功能权限,是接口的聚合

# 定义

# 示例

示例参考: things/service/apisvr/http/things/device/info.api

@server(
    group: things/device/info
    prefix: /api/v1/things/device/info
    accessCodePrefix: "thingsDeviceInfo"   //生成授权code的前缀,如果不填写则会使用group 生成小驼峰
    accessNamePrefix: "设备信息"  // 授权名称的前缀
    accessGroup: "设备管理"   //授权组,如果没有这个字段,不会生成授权信息
    defaultNeedAuth: "false" //授权默认参数 是否需要授权,不填为false
    defaultAuthType: "all" //授权默认参数 默认授权的角色 1(all) 全部人可以操作 2(admin) 默认授予租户管理员权限 3(superAdmin,supper) default租户才可以操作(超管是跨租户的)
    middleware:  CheckTokenWare,InitCtxsWare
)

service api {
    @doc(
        summary: "新增设备" //接口的描述
        isNeedAuth: "true" //是否需要权限认证
        authType: "admin" //默认只授权给管理员
    )
    @handler create
    post /create (DeviceInfo) returns ()
    @doc(
        summary: "更新设备" //不填为默认值,
    )
    @handler update
    post /update (DeviceInfo) returns ()
    @doc(
        summary: "删除设备"
        isNeedAuth: "true"
        authType: "admin"
    )
    @handler delete
    post /delete (DeviceInfoDeleteReq) returns ()
    @doc(
        summary: "设备控制"
        businessType: "control" // 默认代码生成会将  结尾为修改为对应的操作类型组装到授权code中,如果需要特殊的则可以自定义 默认的如下 add:("create", "multi-create", "import") "modify":("update", "multi-update","send")  "delete":("delete", "multi-delete") find:("index", "read", "count", "tree") 没有匹配到的则为other
    )
    @handler control
    post /control (DeviceInfoControlReq) returns ()
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38

# 生成授权json

在服务目录下执行以下命令,注意将api.api换成服务自己的api文件入口,执行完成后会在http文件夹下生成一个access.json文件

goctl api access  -api http/api.api -dir ./http
1

# 导入授权

上次更新: 2024/11/12, 13:18:12
中间件使用
swagger使用

← 中间件使用 swagger使用→

Theme by Vdoing | Copyright © 2022-2025 昆明云物通科技有限公司|GNU | 滇ICP备2024043132号-1 |
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式