PHP 프레임워크 Laravel Laravel 개발: Laravel Swagger를 사용하여 API 문서를 생성하는 방법은 무엇입니까?

Laravel 개발: Laravel Swagger를 사용하여 API 문서를 생성하는 방법은 무엇입니까?

Jun 13, 2023 am 09:35 AM
laravel swagger API 문서

Laravel 개발: Laravel Swagger를 사용하여 API 문서를 생성하는 방법은 무엇입니까?

웹 애플리케이션을 개발할 때 API 문서 작업은 지루하지만 필수적인 작업인 경우가 많습니다. Swagger를 사용하여 API 문서를 자동으로 생성하고 시각화하세요. Laravel 개발에서는 Laravel Swagger 확장 패키지를 사용하여 Swagger API 문서를 쉽게 생성할 수 있습니다. 이 글은 Laravel과 함께 Laravel Swagger를 사용하는 방법을 안내합니다.

  1. Laravel Swagger 설치

Composer를 사용하여 Laravel Swagger 확장 패키지를 설치하세요:

composer require darkaonline/l5-swagger
로그인 후 복사
  1. Laravel Swagger 구성

Laravel Swagger는 Swagger UI에 의존하므로 Swagger UI의 리소스를 Laravel의 공개 디렉터리에 게시해야 합니다. 게시를 완료하려면 다음 명령을 사용하세요.

php artisan vendor:publish --provider "L5SwaggerL5SwaggerServiceProvider"
로그인 후 복사

게시 명령을 실행하면 public/vendor 디렉터리 아래에 swagger-ui 디렉터리가 표시됩니다. Swagger UI 모든 리소스. public/vendor 目录下看到 swagger-ui 目录,这个目录中包含了 Swagger UI 的所有资源。

接下来,在 Laravel 的配置文件 config/app.php 中添加以下行:

'providers' => [
    ...
    L5SwaggerL5SwaggerServiceProvider::class,
],

'aliases' => [
    ...
    'Swagger' => L5SwaggerFacadesL5Swagger::class,
],
로그인 후 복사
  1. 添加 Swagger 注释

为了告诉 Laravel Swagger 没有推断的 API 格式,我们需要在代码中添加 Swagger 注释。这些注释可以让 Laravel Swagger 自动解析您的 API,并生成对应的文档。

/**
 * @OAGet(
 *      path="/users",
 *      operationId="getUsersList",
 *      tags={"Users"},
 *      summary="Get list of registered users",
 *      description="Returns list of users",
 *      @OAResponse(response="200", description="successful operation"),
 *      @OAResponse(response=401, description="Unauthorized"),
 *      @OAResponse(response=403, description="Forbidden"),
 *      @OAResponse(response=404, description="Not Found"),
 *      @OAResponse(response=500, description="Internal Server Error")
 *     )
 */
로그인 후 복사

在上面的示例中,我们使用 @OAGet 注释表示这是一个 GET 请求。path 注释定义 API 的路径。tagssummary 注释用于在 Swagger 文档中显示摘要和标签。最后,@OAResponse 注释示例了可能的响应状态。

  1. 在 Laravel 中查看 Swagger 文档

在完成所有先前的步骤之后,我们可以使用以下 URL 来查看 Laravel Swagger 文档:

http://your-app.dev/api/documentation
로그인 후 복사

(请注意,如果您使用的是 Laravel 5.4 或以上版本,则无需定义 .dev,请改为使用 .test

다음으로, Laravel의 구성 파일 config/app.php에 다음 줄을 추가하세요:

rrreee

    Add Swagger 주석

    Swagger가 추론하지 않는다고 Laravel에 알리려면 API 형식을 사용하려면 코드에 Swagger 주석을 추가해야 합니다. 이러한 주석을 사용하면 Laravel Swagger가 자동으로 API를 구문 분석하고 해당 문서를 생성할 수 있습니다.

    rrreee

    위의 예에서는 @OAGet 주석을 사용하여 이것이 GET 요청임을 나타냈습니다. path 주석은 API 경로를 정의합니다. tagssummary 주석은 Swagger 문서에 요약과 태그를 표시하는 데 사용됩니다. 마지막으로 @OAResponse 주석은 가능한 응답 상태를 예시합니다.

      Laravel에서 Swagger 문서 보기

      🎜🎜이전 단계를 모두 완료한 후 다음 URL을 사용하여 Laravel Swagger 문서를 볼 수 있습니다: 🎜rrreee🎜 (For를 사용하는 경우 참고하세요) Laravel 5.4 이상에서는 .dev를 정의할 필요가 없습니다. 대신 .test 또는 다른 로컬 도메인 이름을 사용하세요.) 🎜🎜Laravel 개발 서버를 시작하고 위 URL에 접속하세요. , 브라우저에서 자동으로 생성된 Swagger 문서를 볼 수 있어야 합니다. 🎜🎜Swagger 문서에서는 정의된 API를 보고, API에 추가된 Swagger 주석을 기반으로 API를 테스트하고, 가능한 응답 상태를 볼 수 있습니다. 🎜🎜요약🎜🎜이 기사에서는 Laravel Swagger 확장 패키지를 사용하여 Swagger API 문서를 쉽게 생성하는 방법을 배웠습니다. 먼저 Laravel Swagger를 설치한 다음 Swagger를 시작하고 Swagger 주석을 API에 추가했습니다. 마지막으로 Laravel Swagger가 생성한 문서를 살펴보았습니다. 🎜🎜Laravel Swagger를 사용하면 API 문서를 수동으로 작성하는 부담을 크게 줄이고 발생할 수 있는 오류와 불일치를 방지할 수 있습니다. Swagger UI를 사용하면 개발자 친화적인 인터페이스를 제공하면서 API를 더 쉽게 보고 테스트할 수 있습니다. 🎜

위 내용은 Laravel 개발: Laravel Swagger를 사용하여 API 문서를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Laravel - 장인 명령 Laravel - 장인 명령 Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands - Laravel 5.7은 새로운 명령을 처리하고 테스트하는 새로운 방법을 제공합니다. 여기에는 장인 명령을 테스트하는 새로운 기능이 포함되어 있으며 데모는 아래에 언급되어 있습니다.

Laravel - 페이지 매김 사용자 정의 Laravel - 페이지 매김 사용자 정의 Aug 27, 2024 am 10:51 AM

Laravel - 페이지 매김 사용자 정의 - Laravel에는 사용자나 개발자가 페이지 매김 기능을 포함하는 데 도움이 되는 페이지 매김 기능이 포함되어 있습니다. Laravel 페이지네이터는 쿼리 빌더 및 Eloquent ORM과 통합되어 있습니다. 자동 페이지 매김 방법

Laravel에서 이메일 전송이 실패 할 때 반환 코드를 얻는 방법은 무엇입니까? Laravel에서 이메일 전송이 실패 할 때 반환 코드를 얻는 방법은 무엇입니까? Apr 01, 2025 pm 02:45 PM

Laravel 이메일 전송이 실패 할 때 반환 코드를 얻는 방법. Laravel을 사용하여 응용 프로그램을 개발할 때 종종 확인 코드를 보내야하는 상황이 발생합니다. 그리고 실제로 ...

laravel 일정 작업이 실행되지 않습니다 : 스케줄 후 작업이 실행되지 않으면 어떻게해야합니까? laravel 일정 작업이 실행되지 않습니다 : 스케줄 후 작업이 실행되지 않으면 어떻게해야합니까? Mar 31, 2025 pm 11:24 PM

laravel 일정 작업 실행 비 응답 문제 해결 Laravel의 일정 작업 일정을 사용할 때 많은 개발자 가이 문제에 직면합니다 : 스케줄 : 실행 ...

Laravel에서는 이메일로 확인 코드를 보내지 못하는 상황을 처리하는 방법은 무엇입니까? Laravel에서는 이메일로 확인 코드를 보내지 못하는 상황을 처리하는 방법은 무엇입니까? Mar 31, 2025 pm 11:48 PM

Laravel의 이메일을 처리하지 않는 방법은 LaRavel을 사용하는 것입니다.

DCAT 관리자에서 데이터를 추가하기 위해 클릭하는 사용자 정의 테이블 기능을 구현하는 방법은 무엇입니까? DCAT 관리자에서 데이터를 추가하기 위해 클릭하는 사용자 정의 테이블 기능을 구현하는 방법은 무엇입니까? Apr 01, 2025 am 07:09 AM

DCAT를 사용할 때 DCATADMIN (LARAVEL-ADMIN)에서 데이터를 추가하려면 사용자 정의의 테이블 기능을 구현하는 방법 ...

Laravel - 덤프 서버 Laravel - 덤프 서버 Aug 27, 2024 am 10:51 AM

Laravel - 덤프 서버 - Laravel 덤프 서버는 Laravel 5.7 버전과 함께 제공됩니다. 이전 버전에는 덤프 서버가 포함되어 있지 않습니다. 덤프 서버는 laravel/laravel 작곡가 파일의 개발 종속성이 됩니다.

Laravel Redis Connection 공유 : 선택 메소드가 다른 연결에 영향을 미치는 이유는 무엇입니까? Laravel Redis Connection 공유 : 선택 메소드가 다른 연결에 영향을 미치는 이유는 무엇입니까? Apr 01, 2025 am 07:45 AM

Laravel 프레임 워크 및 Laravel 프레임 워크 및 Redis를 사용할 때 Redis 연결을 공유하는 데 영향을 줄 수 있습니다. 개발자는 문제가 발생할 수 있습니다. 구성을 통해 ...

See all articles