Lumen 8을 사용하여 REST API를 구축하는 방법

4968 단어 restapiphplumelaravel


REST API는 오늘날 백엔드 개발자가 마스터해야 하는 필수 기술이며 이를 개발하는 데 도움이 되는 몇 가지 잘 알려진 프레임워크는 Lumen입니다. Lumen은 마이크로 프레임워크 개발에 중점을 둔 Laravel의 파생 프로젝트입니다. 이 프레임워크는 더 작고 빠릅니다. 따라서 이 세션에서는 Lumen 프레임워크를 사용하여 REST API를 생성하는 방법을 작성합니다.

설치 루멘



물론 REST API를 만들기 전에 먼저 작곡가를 사용하여 로컬에 lumen을 설치합니다. Lumen을 설치하는 명령은 다음과 같습니다.

composer create-project --prefer-dist laravel/lumen rest-api-lumen

설치 프로세스가 완료되면 rest-api-lumen이라는 새 폴더가 자동으로 생성되고 즐겨 사용하는 텍스트 편집기를 사용하여 폴더를 연 다음 프로젝트 구성을 시작합니다.

1단계: 구성



.env 파일을 열고 다음 키를 찾아 아래와 같이 조정합니다.

DB_CONNECTION=sqlite

DB_HOST=

DB_PORT=

DB_DATABASE=storage/database.sqlite

DB_USERNAME=

DB_PASSWORD=

CACHE_DRIVER=array

QUEUE_DRIVER=database

QUEUE_CONNECTION=sync

이 시점에서 우리는 SQLite 데이터베이스를 데이터 저장 장소로 사용할 것입니다.

2단계: 데이터베이스 및 마이그레이션



구성 프로세스가 완료되면 먼저 마이그레이션을 사용하여 테이블을 만들고 아래 명령을 실행하여 새 마이그레이션 파일을 만듭니다.

php artisan make:migration create_products_table

그런 다음 새 마이그레이션 파일이 **database/migrations **폴더에 있습니다. 이번에 생성할 예제 테이블은 이름, 가격 및 설명과 같은 여러 속성을 포함하는 제품 테이블입니다. 아래 코드를 따르십시오.



그런 다음 아래 명령에 따라 제품 테이블 생성 프로세스를 실행합니다.

php artisan migrate

3단계: 모델 생성



다음 단계에서는 app/Models 폴더에 Product.php라는 새 파일을 만든 다음 아래 코드를 따라 제품 테이블에 대한 모델을 만듭니다.



laravel과 달리 루멘 프레임워크는 먼저 bootstrap/app.php 파일을 열고 다음 코드의 주석을 제거하여 Eloquent 및 Facades를 사용할 때 구성해야 합니다.


4단계: 컨트롤러 만들기



다음 단계에서는 ProductController.php라는 새 컨트롤러 파일을 만들고 파일을 app/Http/Controller 폴더에 넣은 다음 아래 코드를 따릅니다.


5단계: 경로 설정



다음 단계에서는 경로 파일을 사용자 지정하고 경로 폴더에서 web.php 파일을 열고 아래 코드를 따릅니다.



위의 그림에서 우리는 api/v1이라는 이름으로 경로 URL 접두사를 만든 다음 api 제품에 대한 또 다른 접두사 그룹을 만듭니다. 모든 작업이 완료된 후 API 테스트를 시작하여 원활하게 실행되는지 확인해야 합니다.

6단계: API 테스트



다음은 Thunder Client 확장 프로그램에서 Visual Studi Code를 사용하여 Postman, Sebelum 테스트 API 키를 사용하여 테스트할 수 있는 테스트 API를 추가하는 것입니다.

php -S 0.0.0.0:8000 -t public/

테스트 API를 사용하여 테스트 API를 사용할 수 있고 테스트 API를 사용할 수 있습니다.

모든 제품 받기



ID로 제품 가져오기



제품 만들기



제품 업데이트



제품 삭제



결론



우리는 Lumen 프레임워크를 사용하여 제품에 대한 REST API를 만들 수 있었지만 기본적으로 REST API를 만들려면 Authorization, Rate Limiting 등과 같은 다른 구성 요소가 필요하기 때문에 이것만으로는 충분하지 않습니다. 이 소스 코드를 볼 수 있습니다. 내 github의 기사**account ,** 이 기사가 유용하다면 별표를 주고 공유하는 것을 잊지 마십시오.

읽어 주셔서 감사합니다!



새로운 프로젝트에 사용할 수 있습니다! 대화를 나누자:
이메일 : [email protected]
링크드인 :

좋은 웹페이지 즐겨찾기