SwaggerUI를 사용하여 Golang에서 API 온라인 문서 구현
현대 애플리케이션 아키텍처의 출현으로 API(애플리케이션 프로그래밍 인터페이스)는 현대 웹 애플리케이션의 기본 구성 요소가 되었습니다. API 수가 계속 증가함에 따라 API 문서를 작성하고 유지하는 것이 지루한 작업이 되었습니다. 따라서 API 문서 작성 및 유지 관리 프로세스를 단순화하는 것이 매우 필요합니다. Swagger는 웹 API에 대한 강력한 문서화 도구를 제공하는 널리 사용되는 솔루션입니다. 이 기사에서는 SwaggerUI를 사용하여 Golang에서 API 온라인 문서를 구현하는 방법을 소개합니다.
Swagger 소개
Swagger는 개발자가 RESTful API를 설계, 구축, 문서화 및 테스트하는 데 도움을 줄 수 있는 오픈 소스 API 구축 도구 세트입니다. 여기에는 Swagger Editor, Swagger UI 및 Swagger Codegen과 같은 여러 도구가 포함되어 있습니다.
그 중 Swagger Editor는 개발자가 Swagger 사양을 작성하고 편집하는 데 도움을 주는 웹 브라우저 기반 편집기입니다. Swagger UI는 Swagger 사양을 API 문서로 렌더링할 수 있는 도구이며 클라이언트 및 서버 측 API를 자동으로 생성할 수 있습니다. 암호.
SwaggerUI를 사용하여 Golang에서 API 온라인 문서 구현
Golang은 높은 동시성 성능과 낮은 오버헤드라는 장점이 있습니다. 고루틴이라는 경량 스레드를 사용하여 동시성을 처리하고 자동 메모리 재활용 및 가비지 수집을 지원합니다. Golang에서는 go-swagger 라이브러리를 사용하여 API 온라인 문서를 구현할 수 있습니다.
먼저 다음 명령을 통해 설치할 수 있는 Swagger를 설치해야 합니다.
$ brew tap go-swagger/go-swagger $ brew install go-swagger
다음으로 로컬 컴퓨터에서 Golang 프로젝트를 초기화해야 합니다. 다음 명령을 사용하여 로컬 컴퓨터에 Go-Swagger-API라는 Golang 프로젝트를 생성했습니다.
$ mkdir Go-Swagger-API $ cd Go-Swagger-API $ go mod init Go-Swagger-API
API 정의를 생성하려면 YAML 파일을 생성하고 다음에서 API 설정을 정의해야 합니다. 그것. 이 예에서는 pet.yaml이라는 파일을 생성하고 그 안에 다음 코드를 추가할 수 있습니다.
swagger: "2.0" info: version: 1.0.0 title: Petstore API produces: - application/json paths: /pets: get: summary: List all pets responses: 200: description: OK 500: description: Internal Server Error post: summary: Add a new pet parameters: - in: body name: body schema: "$ref": "#/definitions/pet" required: true responses: 201: description: Created 500: description: Internal Server Error definitions: pet: type: object properties: id: type: integer name: type: string tag: type: string
다음으로 go-swagger 도구를 사용하여 코드를 생성해야 합니다. 이전 단계에서 정의한 구성을 사용하여 자동으로 코드를 생성합니다. 터미널에 다음 명령을 입력합니다.
$ swagger generate server -A Go-Swagger-API -f pets.yaml
이 명령은 YAML 파일의 정의를 기반으로 서버 측 프레임워크를 생성합니다.
다음으로 API 서버를 시작하고 제대로 작동하는지 확인해야 합니다. 터미널에 다음 명령을 입력합니다.
$ cd cmd/go-swagger-api-server/ $ go run main.go
출력은 다음과 유사해야 합니다.
Serving Go-Swagger-API at http://127.0.0.1:8080
이제 웹 브라우저에서 다음 URL에 액세스하여 API가 작동하는지 확인할 수 있습니다. http: //127.0.0.1 :8080/pets
. http://127.0.0.1:8080/pets
。
最后一步是在API服务器中集成SwaggerUI。首先,在项目的根目录下创建一个名为swagger-ui的目录,并在其中下载SwaggerUI,可以通过下面的命令来实现:
$ mkdir swagger-ui && cd swagger-ui && wget https://github.com/swagger-api/swagger-ui/archive/v3.32.3.tar.gz && tar xfz v3.32.3.tar.gz --strip-components=1 && rm v3.32.3.tar.gz
接下来,在API服务器的main.go文件中添加以下代码:
// Setup the SwaggerUI middleware swaggerUI := http.FileServer(http.Dir("./swagger-ui/dist")) r.PathPrefix("/docs").Handler(http.StripPrefix("/docs", swaggerUI))
此代码将SwaggerUI中的dist目录作为静态资源文件公开,用于呈现实际的SwaggerUI。
现在,可以在浏览器中访问以下URL以查看自动生成的API文档:http://localhost:8080/docs/index.html
마지막 단계는 SwaggerUI를 API 서버에 통합하는 것입니다. 먼저 프로젝트의 루트 디렉터리에 swagger-ui라는 디렉터리를 만들고 여기에 SwaggerUI를 다운로드합니다.
rrreee🎜 다음으로 API의 main.go 파일에 다음 코드를 추가합니다. server :🎜rrreee🎜이 코드는 SwaggerUI의 dist 디렉터리를 실제 SwaggerUI를 렌더링하기 위한 정적 리소스 파일로 노출합니다. 🎜🎜이제 브라우저에서 다음 URL을 방문하여 자동으로 생성된 API 문서를 볼 수 있습니다:http://localhost:8080/docs/index.html
. 🎜🎜결론🎜🎜SwaggerUI를 사용하여 Golang에서 API 온라인 문서를 구현하는 것은 어렵지 않습니다. 이는 API 문서 작성 및 유지 관리에 큰 편의를 제공합니다. Swagger를 사용하면 API에 대한 문서가 자동으로 생성될 수 있으며 백엔드 엔지니어와 프런트엔드 엔지니어가 API 인터페이스를 빠르게 이해할 수 있습니다. 이를 통해 API 개발, 테스트 및 문서화 프로세스가 크게 단순화되어 개발자가 비즈니스 로직 구현에 더 집중할 수 있습니다. 🎜위 내용은 SwaggerUI를 사용하여 Golang에서 API 온라인 문서 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!