Skip to content
azurity edited this page Mar 7, 2019 · 17 revisions

开发说明文档

Welcome to the Unified-Registration-System wiki!

关于开发与提交

  1. 开发前应当从此项目fork到你的github账户上,并在fork的项目上机型开发
  2. 推荐由队长fork并给队员直接修改项目的权限
  3. 开发完成后,发一个PR(push request)到科协官方的项目上,我们经选择一组的代码作为项目的最终实现

开发环境与工具

FAQ

常见问题见如下页面: FAQ

可供使用的后端接口

获取活动列表

request

  • url: https://www.turing-cup.online/voteapp/activity
  • method: GET

response

  • 数据类型: JSON,采用UTF-8编码(默认)
  • 数据格式:
    {
        id: string,
        name: string,
        publisher: string,
        startTime?: string,
        endTime?: string
    }
    解释:
    • id: 活动的id,用于后面的接口
    • name: 活动名称
    • publisher: 活动的发布者/主办方
    • startTime: 报名开始时间,格式为yyyy-MM-dd HH:mm:ss,注意,此属性可选,可能不存在
    • endTime: 报名截止时间,格式为yyyy-MM-dd HH:mm:ss,注意,此属性可选,可能不存在

获取活动的报名数据格式

request

  • url: https://www.turing-cup.online/voteapp/activity/:id RESTful参数说明:
    • id: 需要获取的活动的id
  • method: GET

response

  • 数据类型: JSON,采用UTF-8编码(默认)
  • 数据格式:
    [
        {
            name: string,
            type: string,
            defaultValue?: string,
            description: string,
            tip: string,
            require: boolean,
            case?: string[],
            subItem: object[]
        }
    ]
    解释: 得到的是一个对象数组,用于描述报名条目的格式
    • name: 此项的名称
    • type: 此项的类型,详见type具体解释
    • defaultValue: 此项的默认值,此属性可选,可能不存在
    • description: 此项的具体描述
    • tip: 此项的填写提示
    • require: 此项是否必填,为false时为可选
    • case: 仅在type为部分选项型条目时有意义,为字符串数组,表示选项的值
    • subItem: 仅在type为''group'时有意义,此时为一个条目数组,描述在此分组中的子选项的格式

提交报名信息

request

  • url: https://www.turing-cup.online/voteapp/activity/:id RESTful参数说明:
    • id: 需要获取的活动的id
  • method: POST
  • 数据类型: JSON(默认)
  • body(或者说具体数据,对应wx.request的data):
    {
        [name: string]: string
    }
    解释: 这里表示每一项的属性名为name的值,属性的类型为字符串,name的值与表单格式的name的值相同 示例: 假设表单要求一个用户名('username'),一个密码('password'),则可提交如下数据:
    {
        "username": "张三",
        "password": "123456"
    }

response

  • 数据类型: JSON,采用UTF-8编码(默认)
  • 数据格式:
    {
        success: boolean,
        reason?: string
    }
    解释:
    • success: 标识报名成功与否
    • reason: 此属性仅在报名失败时存在,用于阐述报名失败的原因

    注意,并非所有错误都会有数据返回,网络错误与比较低级的错误(比如服务器炸了),仍然会有HTTP错误的存在

Clone this wiki locally