http://localhost:3000/user
| 参数 |
是否必选 |
类型 |
说明 |
| user |
Y |
string |
邮箱地址 |
| password |
Y |
string |
密码 |
{
"code": 0,
"data": "Success"
}
http://localhost:3000/user/<userId>/verification-email
| 参数 |
是否必选 |
类型 |
说明 |
| userId |
Y |
string |
用户Id |
{
"code": 0,
"data": {
"status": "0", '0' //0:未验证邮箱 1:已验证邮箱
"_id": "5d5d6a1f16e7ab3a2cc96d6e", //用户Id
"user": "snile657@outlook.com", //邮箱
"vote": [], //投票信息
"created": "2019-08-21T15:58:23.219Z",
"updated": "2019-08-21T15:58:23.219Z",
"__v": 0
}
}
http://localhost:3000/user/login
| 参数 |
是否必选 |
类型 |
说明 |
| user |
Y |
string |
邮箱地址 |
| password |
Y |
string |
密码 |
{
"code": 0,
"data": {
"sessionToken": "eyJhbGciOiJ...", //Token
"sessionExpire": 3600, //Token有效时间
"timestamp": 1566403313
}
}
http://localhost:3000/campaign/start
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
{
"code": 0,
"data": {
"status": "1", '1' // 1:开始 2:结束
"_id": "5d5d6d0298f77b235c886b58", // 活动Id
"elector": [], // 参与候选人信息
"created": "2019-08-21T16:10:42.845Z",
"updated": "2019-08-21T16:10:42.845Z",
"__v": 0,
"vote_max": 2, // 最大限制投票数
"id": "5d5d6d0298f77b235c886b58"
}
}
http://localhost:3000/campaign/end
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
| 参数 |
是否必选 |
类型 |
说明 |
| campaignId |
Y |
string |
活动Id |
{
"code": 0,
"data": {
"status": "2", // 1:开始 2:结束
"_id": "5d5d6d0298f77b235c886b58", // 活动Id
"elector": [], // 参与候选人信息
"created": "2019-08-21T16:10:42.845Z",
"updated": "2019-08-21T16:10:42.845Z",
"__v": 0,
"vote_max": 2, // 最大限制投票数
"id": "5d5d6d0298f77b235c886b58"
}
}
http://localhost:3000/elector
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
| 参数 |
是否必选 |
类型 |
说明 |
| campaign |
Y |
string |
活动Id |
| name |
Y |
string |
候选人名字 |
{
"code": 0,
"data": {
"_id": "5d5d6e0d98f77b235c886b59",
"name": "弥明",
"campaign": "5d5c337ec7c0db35a80ac3bb",
"__v": 0
}
}
http://localhost:3000/elector/<electorId>
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
| 参数 |
是否必选 |
类型 |
说明 |
| electorId |
Y |
string |
候选人Id |
{
"code": 0,
"data": {
"_id": "5d5d6e0d98f77b235c886b59",
"name": "弥明", //候选人姓名
"campaign": "5d5c337ec7c0db35a80ac3bb", //活动Id
"__v": 0
}
}
http://localhost:3000/user/vote
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
| 参数 |
是否必选 |
类型 |
说明 |
| userId |
Y |
string |
用户Id |
| electorId |
Y |
string |
候选人Id |
| campaignId |
Y |
string |
活动Id |
{
"code": 0,
"data": "success"
}
http://127.0.0.1:3000/campaign/<campaignId>
请求HEADERS:
| key |
value |
| access-token |
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV... |
| 参数 |
是否必选 |
类型 |
说明 |
| campaignId |
Y |
string |
活动Id |
{
"code": 0,
"data": [
{
"vote_num": 7, //候选人投票总数
"_id": "5d5c3408c7c0db35a80ac3bd", //活动Id
"electorId": {
"name": "弥明" //候选人姓名
}
}
]
}