You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSO2 Identity Server 5.11.0如何自动生成SMS OTP请求的唯一动态ID

解决WSO2 Identity Server 5.11.0 SMS OTP自动生成唯一UUID参数的方案

针对你的需求,直接通过修改WSO2 IS内置的SMS发送序列,添加脚本生成UUID并注入请求Payload即可实现,具体步骤如下:

  • 登录IS管理控制台,进入扩展 → 调解器,点击「添加调解器」:

    • 类型选择「脚本调解器」,名称设为GenerateSMSRequestId
    • 脚本内容填写:
      var uuid = java.util.UUID.randomUUID().toString();
      mc.setProperty("smsRequestId", uuid);
      
    • 保存该调解器
  • 进入配置 → 序列,搜索并编辑SMSOTPHTTPRequestSequence序列:

    • 在序列的最前端(HTTP发送步骤之前),添加刚才创建的GenerateSMSRequestId调解器
    • 找到序列中的「HTTP Payload」调解器,修改id字段的值为$ctx:smsRequestId,修改后的Payload如下:
      {
          "UserName": "user",
          "Password": "pass",
          "body": "$ctx.msg",
          "lang": "en",
          "from": "some service",
          "to": "$ctx.num",
          "id": "$ctx:smsRequestId"
      }
      
  • 保存序列后,测试SMS OTP功能,每次发送短信时,请求中的id参数会自动生成唯一的UUID值。

如果不想单独创建调解器,也可以直接在SMSOTPHTTPRequestSequence中内嵌脚本调解器,把生成UUID的代码直接写在序列里,效果是一样的。

内容的提问来源于stack exchange,提问作者Elias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 02:06:23