kimjson / MadCamp02_server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

api 정리

1. users

<스키마>
email: String, // key if facebook login. else use default mongoDB id.
isFacebook: String // "true" or "false" convert to real boolean value by Boolean.parseBoolean in JAVA

GET, /users : 유저 리스트 불러오기. 결과물은 유저들의 json array

GET, /users/:key : 단일 유저 불러오기. :key가 이메일이면 이메일로, 몽고 디비 id면 그 아이디로 찾아서 가져옴. 결과물은
단일 유저의 json

POST, /users : 유저 생성. request body에 json으로 email(선택), isFacebook(필수)를 포함하여 보내야 한다. 결과물은 생성된
유저의 json이다. 사실 일단 필요한건 몽고 디비 아이디니까 그 외에는 디버그 용으로 활용하고 나중에 없앨 수 있다. 바디에
mongo_id 라는 필드를 추가하여 중복 아이디 추가를 방지한다.

PUT, /users/:user_id : 아이디에 해당하는 유저 수정. 이메일 주소 업데이트나, 페이스북 연동/해지 등에 활용될 수 있을 것
같다. 아이디 이외의 모든 필드를 자유롭게 json에 포함하여 전송하면 그 부분이 수정된다. 결과는 수정이 완료되었다는
메시지다.

DELETE, /users/:user_id : 유저 삭제. 아이디에 해당하는 유저를 삭제한다. 결과물은 삭제가 성공하였다는 메시지.

2. friends

<스키마>
whose: Schema.ObjectId, // object id of owner
fromWhere: String, // 'facebook' or 'phonebook' or 'both'
email: String, // key if from facebook
phone: String, // key if from phonebook
name: String,
birth: Date,
gender: String // M, F, or user defined.

GET, /friends/:user_id : 아이디에 해당하는 유저의 모든 친구 리스트를 json array로 출력

GET, /friends/:user_id/:key : 아이디에 해당하는 유저의 친구 하나를 key(이메일 또는 -포함한 휴대폰 번호)로 GET.

POST, /friends/:user_id : 유저에 친구를 추가한다. whose를 제외한 모든 정보는 URL이 아닌 body에 json으로
들어간다. 필수로 들어가야 할 것은 whose, fromWhere, name이고 email, phone은 둘 중 하나가 반드시 들어가야 하며, 나머지는
선택적이다.

PUT, /friends/:user_id/:key : 유저에 추가된 이메일 또는 휴대폰 번호로 친구를 찾아 수정한다.
수정될 정보는 body에 json으로 들어간다.

DELETE, /friends/:user_id/:key : 유저의 친구를 이메일 또는 휴대폰 번호로 찾아서 삭제한다.




About


Languages

Language:JavaScript 97.9%Language:HTML 1.5%Language:CSS 0.6%