简体中文
Ce projet vise à traduire la documentation WeCom en spécification OpenAPI, afin que vous puissiez générer du code client dans différents langages de programmation. Actuellement, nous utilisons la version 3.x de la spécification OpenAPI.
$ npm install
Lorsque l'application est en cours d'exécution, le fichier de spécification OpenAPI openapi.yaml
sera généré. Vous pouvez ouvrir http://localhost:3000/openapi
pour afficher l'interface utilisateur de Swagger.
$ npm run start
swagger-codegen est un outil très populaire pour générer du code à partir de la spécification OpenAPI. Mais si vous utilisez Golang, go-swagge est recommandé.
go-swagge est basé sur la spécification OpenAPI 2.0, vous devez donc rétrograder la version.
$ npm install -g api-spec-converter
$ api-spec-converter --from=openapi_3 --to=swagger_2 --syntax=yaml --order=alpha ./openapi.yaml > swagger.yaml
Générez ensuite le code Golang à partir du fichier swagger.yaml
.
$ brew tap go-swagger/go-swagger
$ brew install go-swagger
$ mkdir wecom-api && cd wecom-api
# NOTE: you need run go mod init to create a go.mod file
$ go mod init wecom-api
$ swagger generate client -f swagger.yaml -t wecom-api
Ce projet est basé sur l'intégration Swagger de NestJS. Reportez-vous à OpenAPI (NestJS) pour plus de détails.
nest g --no-spec controller department
Habituellement, nous déclarons les DTO et les réponses dans différentes classes.
nest g --no-spec class department/Department
@ApiProperty({
required: false,
type: 'string',
isArray: true,
maxItems: 100,
example: '["abel"]',
description: 'user id list, max length is 100',
})
userid_list: string[];
required
, type
est requis.description
, example
recommandé. @ApiOperation({
operationId: 'getGroupChat',
summary: 'Get user group detail',
description: 'Get user group detail',
externalDocs: {
url: 'https://developer.work.weixin.qq.com/document/path/92122',
},
})
operationId
Obligatoire, unique, est le nom de la fonction dans le code de génération.summary
ObligatoireexternalDocs
Lien vers le document officiel de WeCom. Tout d’abord, vous devez obtenir un access_token
pour autoriser les appels API.
Le navigateur a un problème CORS, nous ne pouvons donc pas accéder directement à wx-work. Nous avons donc créé une procuration pour vous. Pour y accéder, utilisez http://localhost:3000/cgi-bin
.