본문 바로가기

API/MySQL API14

Python으로 Mysql접속, 사진 업로드&오토태깅&DB저장 API, 포스팅 수정&DB수정 API 사진 업로드, 오토태깅, DB에 저장을 해보자 사진 업로드 API, boto3 AWS - 객체 감지 API 이전글 참고 바라며둘의 짬뽕 + DB에 저장까지 하자 API 설정 우선 HTTP 메소드는 CRUD중 Create에 해당하는POST로 설정 경로는 포스팅 하는 거라서 /post로 지정해줬다그리고 회원가입, 로그인 인증토큰을 받을 예정이라 헤더에서 인증토큰을 넣어줘야 하고 body에서 사진업로드와사진과 함께 텍스트 컨텐트를 넣어준다 app.py 설정api.add_resource( PostResource ,'/post') 간단히 경로를 설정해 준다 post.py 설정  이 부분은 길어지니 사진 업로드 API, boto3 AWS - 객체 감지 API  우선 이 부분을 참고 바라며 try: client.. 2024. 5. 29.
Python으로 Mysql 접속, 영화추천 API 이런 서비스를 만든다고 할때  API 설정  HTTP 메소드는CRUD중 Read인Get으로 설정 10개만 보여주기로 하니 count라는 변수를 10개로 설정 app.py 설정api.add_resource(MovieRecommendResources, '/movie/recommend') recommend.py 설정 class MovieRecommendResources(Resource) : @jwt_required() def get(self): count = request.args.get('count') count = int(count) user_id = get_jwt_identity() 새로운 클래스를 만들고 인증토큰이 필요하니 jwt_.. 2024. 5. 27.
Python으로 Mysql접속, 영화리스트 가져오는 API 이런 페이지를 만들어야 한다면 우선 로그인이 되어 있어야 한다,즐겨찾기 구분을 해줘야하고, 영화 이름 정보를 가져와야하고,리뷰 갯수 토탈과, 별점 평균을 구해야하고 옾셋, 리밋 25로 설정한 것으로 리뷰로 정렬한 페이지별점으로 정렬한 페이지 를 만들면 되겠다 API 설정 HTTP 메소드는CRUD중 Read에 해당하는GET로 설정후 offset과 limit을 설정정렬에 해당하는 order는 리뷰갯수로 일단 설정후 나중에 별점평균으로 설정하고 싶다면 바꾸라는 메세지를 추가로 작성해준다 app.py 설정api.add_resource(MovieResources, '/movie')경로 설정해주고 다음으로 넘어간다 movie.py 설정 class MovieResources(Resource) : @jw.. 2024. 5. 27.
Python으로 Mysql 접속, 회원 정보 수정 API 이번엔 유저의 정보 수정이다  API 설정경로는 회원가입과 같은 유저의 레지스터 그리고 HTTP 메소드는CRUD의 Update에 해당하는PUT으로 설정한다 그리고 헤더에는 인증토큰을 받아오고바디에 는 수정하는 정보들을 입력한다 사진에는 이메일이 적혀있지만이메일은 로그인을 할때 신분을 확인하는 고유한 값이므로수정을 할 수 없다 다음은 user.py 수정 @jwt_required()def put(self) : # 회원정보 수정 역시 인증이 필요하니 jwt_required를 적어준 뒤put 함수를 적어준다  data = request.get_json()if data.get('password') is None or data.get('password').strip() == '' or \ data.get('n.. 2024. 5. 24.
Python으로 Mysql 접속, 회원탈퇴 API 회원탈퇴시 계정의 정보만 사라지는 경우도 있지만  이번에는 메모장API를 만들고 있었고 회원 탈퇴시 작성한 메모도 모두 삭제되는 API를 만들도록 하겠다 우선은 API 설정부터 시작하겠다API 설정  경로는 회원가입시와 동일하고HTTP 메소드는DELETE로 하겠다 그리고 회원의 정보를 받아와야 하니 헤더에서 토큰을 받아올 예정이다  그리고 app.py는 수정할 것이 없으니user.py 설정  @jwt_required()def delete(self) : # 회원탈퇴 JWT 인증이 필요하니 jwt_required를 적어주고 delete 함수를 적어준다 try : connection = get_connection() user_id = get_jwt_identity() query = '''del.. 2024. 5. 24.
Python으로 Mysql 접속, 로그아웃 API 1. API 설정경로는 유저의 로그아웃으로 설정 HTTP 메소드는 아무래도 끝내는거니까 delete로 해서 2. app.py 설정 api.add_resource(UserLogoutResource, '/users/logout')로 경로를 만들어준뒤2 - 1. 로그아웃된 토큰으로 요청하는 경우, 처리하는 함수 작성@jwt.token_in_blocklist_loaderdef check_if_token_is_revoked(jwt_header, jwt_payload): jti = jwt_payload['jti'] return jti in jwt_blacklist를 app = flask 와 api = Api(app)사이에 넣는다 이 함수는 jwt가 블랙리스트에 있는지 체크하게 되는데 아래에서 후술할 블랙.. 2024. 5. 22.