본문 바로가기

IT 프로그래밍 관련/API server ( Flask )8

Git hub, serverless를 이용한 CI/CD 이 전에 serverless프레임워크를 이용하여, 배포를 해봤다. 이때 우리가 업데이트한 내용을 새롭게 배포를 하려면 , sls deploy 라고 매번 쳐서 수동으로 업데이트를 했어야했다. 이것은 매우 번거롭고, 팀원들과 함께라면 더욱 더 많은 일이 요한다. 그래서 CI / CD 라는것이 필요하다 CI / CD 란 CI는 Continuous Integration 즉, 지속적인 통합이라는 의미입니다. 지속적인 통합이란, 어플리케이션의 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트 되어 공유 레포지토리에 통합히는 것을 의미한다. Continuous Delivery는 공유 레포지토리로 자동으로 Release 하는 것, Continuous Deployment는 Production 레벨까지 자동으로 depl.. 2021. 4. 19.
AWS Lambda 이용 Serverless Application 람다를 이용하여 배포를 해보려고 한다. 이때 손쉽게하기 위하여 프레임워크를 이용하는데 , Serverless를 이용한다. Serverless는 배포 관련한 복잡한 절차들을 손쉽게 할 수 있게 해주는 어플리케이션이다. 사용하기에 앞서 , AWS IAM의 권한을 필요로 한다. AWS 홈페이지에 접속하여, 콘솔 로그인을 한뒤 IAM 을 찾아 들어가준다. 사용자 탭으로 들어가 , 사용자 추가를 선택한다. 적당히 이름을 지어준 후 , 프로그래밍 방식 엑세스로 선택 후 다음, 권한 설정 부분에서 기존 정책 직접 연결로 가서, 제일 위에 있는 AdministratorAccess 선택후 다음, 그 후에 계속 다음을 누르면 아래와 같은 화면이 나오는데 , 엑세스 ID키는 중요하니 CSV 파일로 저장해 놓도록 한다. 그러.. 2021. 4. 19.
토큰을 통한 유저 인증 , 로그인,아웃관리 ( flask-jwt-extended ) 파이썬의 flask-jwt-extended 라는 라이브러리는 java web token 으로 사용자의 로그인, 로그아웃 기능을 구현하며, 그때마다 사용자에게 새로운 토큰을 발행하여, 그 토큰이 권한을 갖게 한다. 아래서 만든 레시피 API에서 레시피를 만들어서 추가하려고 하는데 그 부분을 로그인한 회원만 할 수 있도록 설정 할 수 있다는 것이다. ( 토큰은 회원간에도 다 다르기 때문에 사용자 간의 구분이 가능하고, 내 정보보기등에 설정을 해놓으면, 내가 가진 토큰과는 맞지 않는, 다른 사람은 나의 정보를 볼 수 없다.) 1) 회원가입 먼저 jwt를 사용하기 위해서는 시크릿키를 만들어야 하고, jwtmanagerf 를 활성화해야한다. jwt사용을 위해 JWTManager를 변수에 옮겨닮고, 함수를 적었다... 2021. 4. 8.
API개발 경로와 리소스 이해. 이전에 바로 앞에서 나는 레시피관련 API를 작업하고있었다. 그 이후에 api를 추가함에 경로와 리소스를 연결하는 코드를 몇개 더 추가하였다. 경로와 리소스를 연결하는 코드를 몇개 추가하였다. 제일 위는 나의 호스트/포트번호/recipes 라는 경로로 RecipeListResource 를 연결 한것이다. ( 다른 페이지에 클래스형식으로 되어있음) 여러가지 추가된 것 중에 , 클래스명이 같은것이 하나도 없다. 이는 서로간에 경로가 다르면 클래스명, 연결되는 부분도 다 달라져야한다. 는 플라스크의 방법으로 /recipes/ 숫자 /를 넣겠다는 뜻으로 , 그 숫자는 recipe_id라는 내가 정한 변수로 넣는다는 것이다. 두 번째 코드는 한가지의 레시피를 불러오는 코드인데 , 그 한가지의 음식의 id를 rec.. 2021. 4. 8.
728x90