strapi로 나머지 API 만들기

Strapi는 nodejs를 사용하여 강력한 백엔드를 만들 수 있는 오픈 소스 헤드리스 CMS입니다.



헤드리스 CMS는 프런트엔드 템플릿이 없다는 점을 제외하면 Wordpress 및 Drupal과 같은 유명한 알려진 CMS와 유사합니다.
백엔드에서 프런트엔드를 분리하고 편안한 API 또는 graphql API를 노출합니다.

처음 Strapi를 발견했을 때 저는 그것이 제공하는 능력과 사용하기 쉬운 인터페이스에 놀랐습니다.
백엔드 코드를 작성하지 않고도 모바일 애플리케이션을 개발할 수 있습니다.

Strapi는 전적으로 nodejs를 사용하여 구축되어 JavaScript에 익숙한 개발자에게 적합합니다.
또한 오픈 소스이며 자체 호스팅이 가능합니다.

Strapi 프로젝트를 설정하고 간단한 전자 상거래 앱을 만드는 방법을 안내해 드리겠습니다. 몇 분 안에 준비가 될 것이라고 약속합니다!

Strapi를 시작하는 방법


새 프로젝트 만들기



새 빈 프로젝트를 만들려면 터미널에서 다음 명령을 사용할 수 있습니다.

npx create-strapi-app project-name --quickstart

--quickstart는 빈 프로젝트를 사용할 것임을 의미하지만 템플릿을 대신 사용할 수 있습니다.
미리 정의된 구성 및 설정

설치가 끝나면 프로젝트 디렉토리로 이동합니다.

cd project-name


그런 다음 다음 명령으로 프로젝트를 시작합니다.

yarn develop


대시보드가 ​​브라우저에서 열리고 등록 페이지가 나타나서 다음을 수행할 수 있습니다.
관리자 계정 만들기



등록하면 대시보드가 ​​표시되며 여기에는 Users 컬렉션이 생성되어 있습니다.
이렇게 하면 기본적으로 strapi에서 제공하는 JWT를 사용하여 인증할 수 있습니다. 정말 멋집니다!



컬렉션 만들기



컬렉션을 만들기 위해 콘텐츠 유형 빌더를 사용하고 Create new collection type컬렉션 유형의 이름을 선택할 수 있는 모달 팝업이 표시되며 이름은 Products 입니다.

이제 필요한 필드를 추가할 수 있습니다. 제품 이름, ID, 가격 및 설명이 필요합니다.
우리는 그것을 간단하게 유지할 것입니다.

선택할 수 있는 다양한 필드 유형입니다.


저장할 수 있는 필드 생성을 완료하면 대시보드가 ​​새로운 컬렉션 유형 제품으로 업데이트됩니다.
하나의 제품으로 테이블을 채웠습니다.



API 설정



컬렉션 유형 제품을 생성한 후 나머지 API도 생성되며 Strapi는 다음을 제공할 것입니다.
GET,POST,PUT,DELETE 제품 경로

/products //to get all the products or add a product 

/products/:id // to get one product or delete or update


이러한 API를 사용할 수 있으려면 공개해야 합니다. 기본적으로 비공개로 설정되어 있습니다.
우리는 find 및 findone API만 공개하기를 원하기 때문입니다.

그렇게 하려면 다음으로 이동해야 합니다.

settings > USERS & PERMISSIONS PLUGIN > Roles > Public


그리고 우리는 find와 findone을 그렇게 설정할 것입니다.



저장하고 사용하려고 하면 JSON 형식으로 다음과 같은 응답을 얻습니다.

// find all : localhost:1337/products
[{
    "id":1,
    "name":"T-shirt",
    "description":"A unique and special T-shirt",
    "price":70,
    "published_at":"2021-06-13T16:22:02.560Z",
    "created_at":"2021-06-13T16:21:58.801Z",
    "updated_at":"2021-06-13T16:22:02.573Z"
}]

// find one : localhost:1337/products/1
{
    "id":1,
    "name":"T-shirt",
    "description":"A unique and special T-shirt",
    "price":70,
    "published_at":"2021-06-13T16:22:02.560Z",
    "created_at":"2021-06-13T16:21:58.801Z",
    "updated_at":"2021-06-13T16:22:02.573Z"
}



이제 앱의 관리자 패널로 백엔드를 설정한 것을 축하합니다!


나는 많은 프로젝트에서 개인적으로 Strapi를 사용했습니다. 그것은 견고한 CMS이며 깊이 파고들면 무엇이든 만들 수 있습니다.
우리는 nodejs로 생성한 사용자 정의 플러그인을 추가하고 반응할 수 있으며 후크를 추가하고 다양한 플랫폼(google, facebook...)의 인증을 통합하고 다양한 데이터베이스를 통합할 수 있습니다.

이 블로그 게시물에서는 Strapi가 가진 기능의 표면만 긁어 보았습니다. 더 자세히 알아보려면 공식 웹사이트here를 확인하세요.

좋은 웹페이지 즐겨찾기