🚀 Socket Launch Week Day 4:Socket MCP Adds Org Alerts, Threat Feed Review, and Package Inspection.Learn more
Sign In

fastdotnet-openapi2ts

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fastdotnet-openapi2ts

[![Gitee Repo stars](https://gitee.com/godhei/openapi2ts4fastdotnet/badge/star.svg?theme=dark)](https://gitee.com/godhei/openapi2ts4fastdotnet) [![npm](https://img.shields.io/npm/v/fastdotnet-openapi2ts)](https://www.npmjs.com/package/fastdotnet-openapi2t

latest
npmnpm
Version
1.2.0
Version published
Weekly downloads
15
-63.41%
Maintainers
1
Weekly downloads
 
Created
Source

OpenAPI to TypeScript Generator (OpenAPI TypeScript 生成器) - Fastdotnet 定制版

Gitee Repo stars npm GitHub tag (latest SemVer pre-release)

English | 中文

致谢与声明

本项目基于 openapi2typescript 进行二次开发,仅为了适配 Fastdotnet 项目而发布。 原始项目地址:github.com/781574155/openapi2typescript Gitee 镜像地址:gitee.com/godhei/openapi2ts4fastdotnet

Original Project | Fastdotnet Customization

English

Introduction

A powerful tool that generates TypeScript request code from OpenAPI 3.0 documentation. If you're using umi, you might want to check out @umijs/plugin-openapi plugin instead.

Installation

npm i --save-dev fastdotnet-openapi2ts
# 或者
pnpm add -D fastdotnet-openapi2ts
# 或者
yarn add -D fastdotnet-openapi2ts

Usage

  • Create a configuration file in your project root directory. You can name it either openapi2ts.config.ts or .openapi2tsrc.ts:
export default {
  schemaPath: 'http://petstore.swagger.io/v2/swagger.json',
  serversPath: './servers',
}

For multiple API sources, you can use an array configuration:

export default [
  {
    schemaPath: 'http://app.swagger.io/v2/swagger.json',
    serversPath: './servers/app',
  },
  {
    schemaPath: 'http://auth.swagger.io/v2/swagger.json',
    serversPath: './servers/auth',
  }
]
  • Add the generation script to your package.json:
{
  "scripts": {
    "openapi2ts": "openapi2ts"
  }
}
  • Generate the API code:
npm run openapi2ts

Configuration Options

PropertyRequiredDescriptionTypeDefault
requestLibPathNoCustom request method pathstring-
requestOptionsTypeNoCustom request options typestring{[key: string]: any}
requestImportStatementNoCustom request import statementstring-
apiPrefixNoAPI prefixstring-
serversPathNoOutput directory pathstring-
schemaPathNoSwagger 2.0 or OpenAPI 3.0 URLstring-
projectNameNoProject namestring-
authorizationNoDocumentation authentication tokenstring-
namespaceNoNamespace namestringAPI
mockFolderNoMock directorystring-
enumStyleNoEnum stylestring-literal | enumstring-literal
nullableNoUse null instead of optionalbooleanfalse
dataFieldsNoData fields in responsestring[]-
isCamelCaseNoUse camelCase for files and functionsbooleantrue
declareTypeNoInterface declaration typetype/interfacetype

Custom Hooks

PropertyTypeDescription
afterOpenApiDataInited(openAPIData: OpenAPIObject) => OpenAPIObjectHook after OpenAPI data initialization
customFunctionName(data: APIDataType) => stringCustom request function name
customTypeName(data: APIDataType) => stringCustom type name
customClassName(tagName: string) => stringCustom class name
customType(schemaObject, namespace, originGetType) => stringCustom type getter
customFileNames(operationObject, apiPath, _apiMethod) => string[]Custom file name generator

中文

介绍

一个强大的工具,可以根据 OpenAPI 3.0 文档生成 TypeScript 请求代码。如果你使用 umi,可以考虑使用 @umijs/plugin-openapi 插件。

安装

npm i --save-dev fastdotnet-openapi2ts
# 或者
pnpm add -D fastdotnet-openapi2ts
# 或者
yarn add -D fastdotnet-openapi2ts

使用方法

  • 在项目根目录创建配置文件,可以命名为 openapi2ts.config.ts.openapi2tsrc.ts
export default {
  schemaPath: 'http://petstore.swagger.io/v2/swagger.json',
  serversPath: './servers',
}

如果需要处理多个 API 源,可以使用数组配置:

export default [
  {
    schemaPath: 'http://app.swagger.io/v2/swagger.json',
    serversPath: './servers/app',
  },
  {
    schemaPath: 'http://auth.swagger.io/v2/swagger.json',
    serversPath: './servers/auth',
  }
]
  • package.json 中添加生成脚本:
{
  "scripts": {
    "openapi2ts": "openapi2ts"
  }
}
  • 生成 API 代码:
npm run openapi2ts

配置选项

属性必填说明类型默认值
requestLibPath自定义请求方法路径string-
requestOptionsType自定义请求方法 options 参数类型string{[key: string]: any}
requestImportStatement自定义请求方法表达式string-
apiPrefixAPI 前缀string-
serversPath生成文件夹的路径string-
schemaPathSwagger 2.0 或 OpenAPI 3.0 的地址string-
projectName项目名称string-
authorization文档登录凭证string-
namespace命名空间名称stringAPI
mockFoldermock 目录string-
enumStyle枚举样式string-literal | enumstring-literal
nullable使用 null 代替可选booleanfalse
dataFieldsresponse 中数据字段string[]-
isCamelCase小驼峰命名文件和请求函数booleantrue
declareTypeinterface 声明类型type/interfacetype

自定义钩子

属性类型说明
afterOpenApiDataInited(openAPIData: OpenAPIObject) => OpenAPIObjectOpenAPI 数据初始化后的钩子
customFunctionName(data: APIDataType) => string自定义请求方法函数名称
customTypeName(data: APIDataType) => string自定义类型名称
customClassName(tagName: string) => string自定义类名
customType(schemaObject, namespace, originGetType) => string自定义获取类型
customFileNames(operationObject, apiPath, _apiMethod) => string[]自定义生成文件名

FAQs

Package last updated on 02 Jun 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts