![전체 글](https://t1.daumcdn.net/tistory_admin/static/manage/images/r3/default_L.png)
전체 글
7. 미니터(Miniter) API 개발 (팔로우와 언팔로우 엔드포인트)
이번에 구현할 엔드포인트는 팔로우와 언팔로우 기능이다. 팔로우 한 사용자의 타임라인을 볼 수 있게 하는 기능이다. 팔로우, 언팔로우하고 싶은 사용자의 아이디를 HTTP 요청으로 보내면 API에서 요청을 처리하는 식으로 구현할 것이다. 팔로우 엔드포이트에 전송할 JSON 데이터는 다음과 같다. {"id" : 1, "follow" : 2} # id는 해당 사용자의 아이디, follow는 팔로우 하고자하는 사용자의 아이디 언팔로우 엔드포인트에 전송할 JSON 데이터는 다음과 같다. {"id" : 1, "unfollow" : 2} 팔로우와 언팔로우의 코드는 다음과 같다. @app.route("/follow", methods=['POST']) def follow(): payload = request.json us..
![6. 미니터(Miniter) API 개발 (300자 제한 트윗 글 올리기)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnJVOh%2FbtrpDLS5KpL%2FWKGb0kUkqBNgF5DqxnfIs0%2Fimg.png)
6. 미니터(Miniter) API 개발 (300자 제한 트윗 글 올리기)
300자 제한 트윗 글 올리기 엔드포인트를 구현하기 위해서는 다음의 요소들을 구현하여야 한다. 사용자는 300자를 초과하지 않는 글을 올릴 수 있다. 만일 300자를 초과하면 엔드포인트는 400 Bad Request 응답을 보내야 한다. 사용자가 300자 이내의 글을 전송하면 엔드포인트는 사용자의 글을 저장하고 있어야 한다. 따라서 타임라인 엔드포인트를 통하여 읽을 수 있도록 해야 한다. 먼저 Tweet 엔드포인트를 호출할 때 전송하는 JSON 데이터는 다음과 같다. { "id" : 1, "tweet : "My First Tweet" } 엔드포인트를 구현하면 다음과 같다. app. tweets = [] @app.route("/tweet", methods['POST']) def tweet(): payloa..
![NameError name 'jonify' is not defined](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvO6Id%2FbtrpQX4TqPD%2Fcu09xhohnm7TExOEkN6Bj0%2Fimg.png)
NameError name 'jonify' is not defined
jsonify 가 정의되지 않았다고 한다. 물론 정의한다고 해서 해결된 문제가 아니다. 애초에 변수로 쓰는게 아니기 때문이다. 작성한 코드는 이렇다. from flask import Flask, request app = Flask(__name__) app.id_count = 1 app.users = {} @app.route("/ping", methods=['GET']) def ping(): return "pong" @app.route("/sign-up", methods=['POST']) def sign_up(): new_user = request.json new_user["id"] = app.id_count app.users[app.id_count] = new_user app.id_count = app...
![5. 미니터(Miniter) API 개발 (회원가입)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsVhKe%2FbtrpyiqbkH6%2FjU2QfGCPEfRKTIKWhsHXxK%2Fimg.png)
5. 미니터(Miniter) API 개발 (회원가입)
이전에 Ping 엔드포인트 하나만 있는 API를 구현한 것에 이어서 미니 트위터인 미니터(Miniter)를 개발해 보고자 한다. 미니터는 다음의 기능을 제공한다. 회원가입 로그인 트윗(tweet) : 게시물 작성 다른 회원 팔로우 언팔로우 타임라인 (팔로우하는 사람들의 트윗들) 회원가입 회원가입을 이루는 구성요소는 id, name, email, password, profile 이 있다. 일단 이전에 구성한 Ping API 와 회원가입 API 코드를 합치면 다음과 같다. from flask import Flask, request app = Flask(__name__) app.id_count = 1 app.users = {} @app.route("/ping", methods=['GET']) def ping(..