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

swagger-typescript-api如何移除请求方法名后的请求类型后缀

移除swagger-typescript-api生成方法的请求类型后缀方案

swagger-typescript-api默认会根据HTTP请求方法自动给生成的接口方法追加对应语义后缀,比如POST请求追加Create、PUT请求追加Update、GET请求追加List/Get、DELETE请求追加Delete,你可以通过官方提供的内置配置直接关闭这个默认行为,不需要额外魔改源码:

  • 命令行(CLI)调用场景
    执行生成命令时追加--method-name-without-suffix参数即可,示例命令:
    swagger-typescript-api -p ./your-swagger-file.json -o ./src/api --method-name-without-suffix
    
    配置生效后,你举例的/assortment POST接口,生成的方法会从原来的Api.assortmentCreate()变为Api.assortment(),不会再自动拼接请求类型对应的后缀。
  • Node脚本调用场景
    如果你是通过代码调用generateApi方法完成生成,在传入的配置对象中把methodNameWithoutSuffix字段设为true即可,示例代码:
    const { generateApi } = require('swagger-typescript-api');
    const path = require('path');
    
    generateApi({
      input: path.resolve(__dirname, './your-swagger-file.json'),
      output: path.resolve(__dirname, './src/api'),
      // 关闭方法名自动追加请求类型后缀的逻辑
      methodNameWithoutSuffix: true,
    });
    

注意:如果同个接口路径下绑定了多个不同HTTP方法的接口(比如/assortment同时存在GET、POST两个方法),关闭后缀后会出现方法名重名冲突,这种情况你可以配合库提供的命名钩子自定义方法名生成规则,根据业务语义给方法加自定义标识,避免生成的代码出现方法覆盖问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 06:21:14