上传插件

您开发的插件可以通过发布插件的方式上传到插件市场。只有当前主账号或具有云原生API网关权限的子账号可以看到并使用该插件。插件启用方式和平台提供插件一致。

操作步骤

  1. 登录云原生API网关控制台

  2. 在左侧导航栏,选择插件,并在顶部菜单栏选择地域。

  3. 插件市场页面的右上角单击发布插件

  4. 发布插件面板,填写插件参数信息,单击上传,等待插件发布成功(此过程可能需要30秒左右)。

    参数

    描述

    选择语言

    选择编写插件时使用的开发语言。

    插件标识

    设置插件的英文标识(唯一标识)。

    插件名称

    设置插件的中文名称。

    插件描述

    填写用途说明,会显示在创建完成后的插件卡片中。

    版本描述

    填写插件的版本描述信息。

    WASM文件

    上传本地编译构建生成的插件二进制文件。文件名需要包含 ".wasm" 后缀。

    执行阶段

    阶段处理顺序:认证阶段 > 鉴权阶段 > 统计阶段 > 默认阶段。若不依赖其他插件执行顺序,填写默认阶段即可。

    执行优先级

    控制执行阶段内的优先级,数字越大优先级越高。若需定制,建议填写10的整数倍,预留好空间。

    适配网关版本

    选择任意版本指定版本

    任意版本:可以安装到任意版本的网关。

    指定版本:仅可以安装到指定版本(含)之后的网关版本。

插件执行顺序说明

说明

按照执行阶段和执行优先级,可以确定多个插件在处理请求和应答时的相对顺序。需要注意的是,处理客户端请求的顺序和处理后端应答的顺序是相反的,即越早处理请求的插件,越晚处理应答。

插件执行顺序由插件执行阶段和插件执行优先级两个参数共同决定,对请求和应答的处理顺序如下图所示:插件执行顺序

在平台提供插件的详情中,可以看到执行阶段和执行优先级的信息,如果希望在特定平台插件执行前后插入自定义插件,可以配置自定义插件的插件执行阶段和插件执行优先级。

插件与策略优先级

以下插件与策略由上到下执行优先级依次降低。

名称

类型

执行阶段

优先级

备注

IP黑白名单

策略

RBAC Filter

http-real-ip

插件

认证阶段

980

流量管控系列插件

ModelRouter

插件

认证阶段

900

AI-API 内置

ModelMapper

插件

认证阶段

800

AI-API 内置

前端灰度

插件

认证阶段

450

传输协议系列插件

IP地理位置

插件

认证阶段

440

传输协议系列插件

DeGraphQL

插件

认证阶段

430

传输协议系列插件

浏览器缓存控制

插件

认证阶段

420

传输协议系列插件

请求/响应转换

插件

认证阶段

410

传输协议系列插件

OAuth2认证

插件

认证阶段

350

认证鉴权系列插件

JWT认证

插件

认证阶段

340

认证鉴权系列插件

HMAC认证

插件

认证阶段

330

认证鉴权系列插件

Basic认证

插件

认证阶段

320

认证鉴权系列插件

Key认证

插件

认证阶段

310

认证鉴权系列插件

外部认证

插件

认证阶段

300

认证鉴权系列插件

OPA

插件

认证阶段

225

认证鉴权系列插件

请求校验

插件

认证阶段

220

传输协议系列插件

IP限制

插件

认证阶段

210

安全防护系列插件

JWT Logout

插件

认证阶段

50

认证鉴权系列插件

通用响应缓存

插件

认证阶段

10

传输协议系列插件

跨域资源共享

插件

鉴权阶段

340

安全防护系列插件

WAF防护

插件

鉴权阶段

330

安全防护系列插件

请求屏蔽

插件

鉴权阶段

320

安全防护系列插件

机器人拦截

插件

鉴权阶段

310

安全防护系列插件

ai-data-masking

插件

默认阶段

991

AI系列插件

ai-statistics

插件

默认阶段

990

AI系列插件

ai-security-guard

插件

默认阶段

850

AI系列插件

ai-cache

插件

默认阶段

800

AI系列插件

ai-quota

插件

默认阶段

750

AI系列插件

ai-intent

插件

默认阶段

700

AI系列插件

ai-history

插件

默认阶段

650

AI系列插件

ai-token-ratelimit

插件

默认阶段

600

AI系列插件

ai-prompt-template

插件

默认阶段

500

AI系列插件

ai-prompt-decorator

插件

默认阶段

450

AI系列插件

ai-network-search

插件

默认阶段

440

AI系列插件

ai-transformer

插件

默认阶段

410

AI系列插件

ai-rag

插件

默认阶段

405

AI系列插件

traffic-tag

插件

默认阶段

400

流量管控系列插件

ai-json

插件

默认阶段

150

AI系列插件

ai-proxy

插件

默认阶段

110

AI系列插件

canary-header

插件

默认阶段

100

流量管控系列插件

基于Key集群限流

插件

默认阶段

20

流量管控系列插件

基于Key限流

插件

默认阶段

10

流量管控系列插件

并发控制/流量控制/熔断

策略

Sentinel Filter

超时/重试/流量复制/Header修改/HTTP重写/跨域

策略

Router Filter

常见问题

导致插件发布失败的原因可能是什么?

一般可能是生成的Wasm文件二进制格式不合法。关于在本地环境成功加载该Wasm文件的Demo示例,请参见使用Go语言开发网关插件