-
Notifications
You must be signed in to change notification settings - Fork 2
Minivote API Documentation
Byeong Gyu Choi edited this page Nov 18, 2017
·
8 revisions
API 페이지의 맨 처음입니다.
현재 개설되어 있는 모든 투표의 이름들을 JSON 형식으로 반환합니다.
응답 예시
[
{
"title": "가장 좋아하는 운동은?"
},
{
"title": "오늘 뭐 먹지?"
}
]
cURL
이 설치되어 있다고 가정합니다!
$ curl --user USER:PASSWD -i 127.0.0.1:8000/poll/
또는, httpie
를 통하여 http 요청을 보낼 수도 있습니다. (설치는 여기 를 참고하세요!) 이런 경우에는,
$ http -a USER:PASSWD http://127.0.0.1:8000/poll/
로 확인하시면 되겠습니다.
투표 생성 요청을 해당 URL 로 보내시면 됩니다. 반드시 POST 로 보내셔야 합니다!
Request 의 body 는 반드시 해당 형식을 따라서, JSON 으로 말아서 넣어 주세요.
{
"poll": "가장 좋아하는 운동은?",
"choices": [
"축구",
"농구",
"야구"
]
}
투표 현황의 반영 요청을 해당 URL 로 보내시면 됩니다. 반드시 POST 로 보내주세요!
Request 의 body 는 밑의 형식대로, JSON 으로 말아서 넣어 주세요.
{
"poll": "가장 좋아하는 운동은?",
"choices": [
{
"name": "축구",
"selected": false
},
{
"name": "야구",
"selected": true
}
]
}
결과 조회 api 는 GET 요청과 POST 요청 둘 다 지원합니다.
GET 요청을 보낼 시, 전체 투표에 대한 결과를, POST 요청을 투표 제목과 같이 보낼 시 해당 투표에 대한 결과만을 반환합니다.
GET 요청에 대한 결과 응답은 이렇습니다.
[
{
"title": "가장 좋아하는 운동은?",
"selections": [
{
"body": "축구",
"num_people": 0
},
{
"body": "농구",
"num_people": 0
},
{
"body": "야구",
"num_people": 1
}
]
},
{
"title": "오늘 뭐 먹지?",
"selections": [
{
"body": "치킨",
"num_people": 0
},
{
"body": "피자",
"num_people": 1
},
{
"body": "족발",
"num_people": 0
},
{
"body": "보쌈",
"num_people": 0
}
]
}
]
밑의 예시와 같이, 투표의 제목을 JSON 으로 말아서 넣어 보내시면, 해당 제목과 일치하는 투표의 결과만 리턴합니다. (아무것도 없으면 당연히 400 에러를 뿜을거에요)
{
"title": "가장 좋아하는 운동은?"
}
결과 응답은 이런 식으로 나옵니다.
{
"title": "가장 좋아하는 운동은?",
"selections": [
{
"body": "축구",
"num_people": 0
},
{
"body": "농구",
"num_people": 0
},
{
"body": "야구",
"num_people": 1
}
]
}
cURL 을 사용하여, 다음 형식으로 http 요청을 보내시면 결과를 받으실 수 있습니다!
$ curl -X POST \
http://127.0.0.1:8000/poll/URL/ \
--user USER:PASSWD \
-H 'content-type: application/json' \
-d '{
"key": value
}'