티스토리 뷰

Strapi

[Strapi] strapi로 api 쉽게 만들기

로또_ 2020. 12. 12. 01:50

 

strapi로 api 만들기

안녕하세요~

이번엔 strapi로 api를 만드는 포스팅을 시작하겠습니다.

 

목차:

0. Strapi?

1. strapi 프로젝트 생성하기

2. 프로젝트 시작하기

3. REST API 만들기

4. 만든 REST API 확인하기

 

Strapi?

strapi는 node.js 기반으로 GUI를 사용하여 보다 쉽게 REST API를 제작할 수 있습니다. 백엔드 서버 제작 시 다른 부가적인 설정들을 하지 않고 바로 사용할 수 있게 해 주는 게 큰 장점입니다. 

요약 : Strapi는 오픈 소스 Node.js 기반 headless CMS입니다. 100 % 자바 스크립트로 이루어져 있고, 설계자의 의도에 따라 맞춤 설정할 수 있으며 개발자가 사용하기에 편리합니다.

 

 

strapi 공식 홈페이지에 들어가시면 아래의 기업들이 strapi의 서비스를 사용하고 있다고 해요. 놀라운 건 NASA도 있어요.

 

strapi 이용하는 기업들

 

 

아래는 strapi가 지원하는 front-end framework tool이에요. 플러터도 지원한다고 쓰여있어서 반가웠어요.

 

strapi가 지원하는 front-end framwork tool

 

 

아래는 strapi 공식 doc입니다. 제가 설명한 대로 안되거나, 더 디테일한 부분들을 알고 싶으시면 참고해주세요.

 

반응형
 

Strapi Documentation

The headless CMS developers love.

strapi.io

 

 

1. strapi 프로젝트 생성하기

먼저 터미널에서 아래의 명령어를 입력하여 strapi 프로젝트를 생성합니다. 해당 명령어는 프로젝트 파일이 생성될 위치에서 실행하세요.

yarn create strapi-app [프로젝트_이름] --quickstart

 

프로젝트를 생성하는 명령어를 실행시킨 후 나타나는 결과를 보여주고 있습니다. 참고하시면 좋을 거 같아요.

 

strapi 프로젝트 생성하기

 

설치가 완료되면 어드민 등록 웹 페이지가 뜰 거예요. 어드민 등록 창이므로 아이디로 사용하실 이메일비밀번호를 등록해주세요.

strapi admin 등록 창

 

짠!

등록을 마무리하시면 다음과 같이 창이 뜹니다. 저희가 위의 코드에서 --quickstart 파라미터를 넣어서 자동으로 yarn develop까지 실행된 결과입니다.

 

strapi admin dashboard

 

 

 

2. 프로젝트 시작하기

프로젝트 생성 시에 --quickstart 인자를 넣지 않으셨다면 다음의 코드를 실행해주세요. 프로젝트 생성 후에 strapi 애플리케이션을 실행하기 위해서는 다음의 코드를 입력해야 합니다.

yarn develop

yarn develop 결과 창

결과 창에 나타난 url로 접속하여 관리 페이지로 들어가실 수 있습니다.(http://localhost:1337/admin)

 

 

 

3. REST API 만들기

strapi의 db에 임의의 값을 입력 후 url로 불러오는 테스트를 진행하겠습니다.

 

strapis는 db 사용 설정을 따로 해주지 않는 이상, 기본적으로 Sqlite를 사용합니다. 실제 프로덕트에서는 db 설정을 따로 해주셔야 합니다. 또한 strapi는 collection types에서 설정한 db 모델링을 가지고 자동으로 REST API를 생성합니다. 

 

먼저 기본 collection인 user에서 임의의 값을 추가합니다. collection types은 db의 collection을 한눈에 볼 수 있는 메뉴라고 생각하시면 됩니다.

 

왼쪽 메뉴의 Collection types에 있는 User를 클릭하세요.

 

collection types -> user

 

 

User collection에 임의의 값을 하나 추가합니다.

저희가 rest api로 호출하여 볼 값이므로 적당히 입력하시면 됩니다.

 

user collection

 

 

 

이제 user의 자료를 볼 수 있게 권한을 설정해줍니다.

테스트로 진행하는 부분이므로 공개적으로 접근 가능하도록 하겠습니다.

아래의 메뉴에서 Settings를 클릭합니다.

 

settings

 

 

setttings를 클릭하신 후 users & permissions plugin에서 역할(Roles) & 권한(Permissions)으로 이동합니다.

 

역할(Roles) & 권한(Permissions)

 

 

저희는 공개적으로 접근할 수 있는 api를 테스트하기 때문에

Roles에서 public을 수정하도록 하겠습니다.

 

Roles -> Public

 

 

collection 조회만 진행하므로 user-permissions -> user -> find를 체크해줍니다.

그리고 꼭 상단의 save를 클릭해주세요.

 

user-permissions -> user -> find 체크

 

4. 만든 REST API 확인하기

설정이 완료된 후 /users로 user collection에 접근한 결과입니다.

아래와 같이 접근하면 JSON 형태로 반환하는 모습을 볼 수 있습니다.

 

response

 

 

 

프로덕트에서는 권한과 roles 등 설정해야 할 부분들이 많습니다. 특히 민감한 정보에 대해서 접근하는 유저를 최소화하고 보안을 신경 써야 합니다.

 

테스트를 위해 localhost에서 진행하였지만 서버를 호스팅 하셔야 실제 api로 사용하실 수 있습니다.

 

다음 포스팅에서는 API와 db를 google cloud에 호스팅하여 사용할 수 있게 해 보겠습니다. 감사합니다~

 

[Strapi] GCP에 mongoDB Atlas설치하기

GCP에 mongoDB Atlas 설치하기 안녕하세요! 저번에 생성한 strapi api의 db를 local SQLite가 아닌 gcp에 mongoDB를 호스팅 하여 사용하려고 합니다. 그전에 먼저 mongoDB Atlas를 생성하고 호스팅 하는 작업을..

puzzle-puzzle.tistory.com

 

반응형