todolist 서비스 v1.0

(node.js + express + lokijs)

  • 간단한 RESTful Service 예제입니다. 내용은 사이드 메뉴를 열어서 확인하세요.
  • 할일목록 앱(Todo List App)을 지원하는 서비스입니다.
  • 매일 새벽2시가 되면 데이터가 초기화됩니다.
  • /todolist/... 경로를 /todolist_long/... 으로 변경하여 요청하면 1초의 지연시간 후에 응답합니다.

: 할일 목록 조회 기능

- 전달 파라미터
  • :owner : 소유자의 식별자(email 주소, 이름 등의 자신을 나타낼 수 있는 식별자)
- 요청 형식
- 응답데이터 형식
[
    { "id":1572093093429,"todo":"야구장","desc":"프로야구 경기도 봐야합니다.","done":false},
    { "id":1572093093428,"todo":"놀기","desc":"노는 것도 중요합니다.","done":false},
    { "id":1572093093427,"todo":"Vue 학습","desc":"Vue 학습을 해야 합니다","done":false},
    { "id":123456789,"todo":"ES6 공부","desc":"ES6공부를 해야 합니다","done":false}
]

: 특정 할일 정보 한건 조회

- 전달 파라미터
  • :owner : 소유자
  • :id : 할일 목록 고유 번호
- 요청 형식
- 응답데이터 형식
{
    "id":123456789,
    "todo":"ES6 공부",
    "desc":"ES6 공부는 필수. 10.22까지."
    "done":false
}

: 새로운 할일을 목록에 추가

- 전달 파라미터
  • :owner : 소유자 고유 식별자
  • name : 이름
  • tel : 전화번호
  • address : 주소
- 요청 형식(conent-type:application/json)
{
    "todo":"React학습",
    "desc":"Redux까지 마무리! (10.23까지)"
}
- 응답데이터 형식(성공)
{
    "status": "success",
    "message": "추가 성공",
    "item": {
        "id": 1572093337388,
        "todo": "React학습",
        "desc": "Redux까지 마무리! (10.23까지)"
    }
}
- 응답데이터 형식(실패)
{
   "status": "fail",
   "message": "[에러메시지]"
}

: 기존 한건의 할일 정보 변경

- 전달 파라미터
  • :owner : 소유자 식별 정보
  • :id : 할일 일련 번호
  • todo : 할일
  • desc : 할일에 대한 설명정보
  • done : 완료여부
- 요청 형식(conent-type:application/json)
{ 
    "todo" : "React학습!!",
    "desc" : "Redux까지 마무리! (11.23까지)",
    "done" : true
}
- 응답데이터 형식(성공)
{
    "status": "success",
    "message": "할일 변경 성공",
    "item": {
        "id": 1572093337388,
        "todo": "React학습!!",
        "desc": "Redux까지 마무리! (11.23까지)",
        "done": true
    }
}
- 응답데이터 형식(실패)
{
   "status": "fail",
   "message": "[에러메시지]"
}

: 할일 한건에 대한 done값 토글 변경

- 전달 파라미터
  • :owner : 소유자 식별 정보
  • :id : 할일 일련 번호
- 요청 형식
  • /todolist/gdhong/123456789/done
- 응답데이터 형식(성공)
{
    "status": "success",
    "message": "완료 변경 성공",
    "item": {
        "id": 1572093337388,
        "todo": "React학습!!",
        "done": true
    }
}
- 응답데이터 형식(실패)
{
   "status": "fail",
   "message": "[에러메시지]"
}

: 할일 한건 삭제

- 전달 파라미터
  • :owner : 소유자 식별 정보
  • :id : 할일 일련 번호
- 응답데이터 형식(성공)
{
    "status": "success",
    "message": "삭제 성공",
    "item": {
        "id": 1572093337388,
        "todo": "React학습!!"
    }
}
- 응답데이터 형식(실패)
{
   "status": "fail",
   "message": "[에러메시지]"
}

: 새로운 owner를 위한 샘플 할일 3건 생성

- 전달 파라미터
  • :owner : 소유자
- 응답데이터 형식
{
    "status": "success",
    "message": "샘플 데이터 생성 성공!"
}
- 응답데이터 형식(실패)
{
"status": "fail",
"message": "[에러메시지]"
}

: 사용자 정보 조회

- 전달 파라미터
  • :id : 사용자 ID
- 응답데이터 형식
{
   id: "1",
   userid: "gdhong",
   username: "홍길동"
}
** 응답 데이터는 ID만 바뀔뿐 항상 홍길동을 리턴합니다.
** 3초의 지연시간 후 응답합니다.