source 接口 #

查询项目的 source 信息 #

GET /upload/project/:project/user/:user

{
    "ret": true,
    "data": "success"
}

查询对应项目在 source 中的最高版本 #

GET /upload/version/project/:project/branch/:branch/path/:path

{
    "ret": true,
    "data": {
        "version": "1.0.0"
    }
}

上传图标到 source #

POST /upload/project

  • req:

    {
        "username": "changquan.fang",
        "project": "demo",
        "path": "fonts/",
        "branch": "master",
        "version": "0.1.11"
    }
    
  • res:

    {
        "ret": true,
        "data": {
            "sourceUrl": "xxx/xxx/fonts/"
        }
    }
    sourceUrl 表述上传 source 后生成的路径信息
    

查询下载接口 #

查询项目信息 #

  • 包括项目 id、名字、版本、负责人、图标详情和字体下载地址
  • 校验是否生成过版本,如果没有,则返回项目基本信息和相应的未生成过版本的提示
  • 校验当前项目是否有图标变化,如果有图标变化,则更新 has_change 状态为 true 并返回相应的存在图标变更的提示
  • 否则返回该项目对应版本的信息

GET /api/projects/name/:name

  • res

    {
        "res": true,
        "data": {
            "id": 463,
            "name": "flight_adr_icon",
            "info": "机票用户产品部安卓图标",
            "owner": "qianru.wang",
            "latest_version": "0.3.16",
            "latest_info": {
                "version": "0.3.16",
                "icons": [
                    {
                        "id": 91,
                        "name": "定位",
                        "code": 61525
                    },
                    {图标信息2},
                    ...
                ],
                "download": {
                    "eot": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/eot/version/0.3.16",
                    "svg": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/svg/version/0.3.16",
                    "ttf": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/ttf/version/0.3.16",
                    "woff": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/woff/version/0.3.16"
                }
    
            },
            "has_change": false, // 项目是否有图标变更
            "versions": ["0.0.1", "0.1.0"],
            "message": ""
        }
    }
    

根据版本查询项目信息 #

  • 包括项目 id、名字、版本、负责人、图标详情和字体下载地址
  • 根据指定的版本,查询项目信息

GET /api/projects/name/:name/:version

  • res
    {
        "res": true,
        "data": {
            "id": 463,
            "name": "flight_adr_icon",
            "info": "机票用户产品部安卓图标",
            "owner": "qianru.wang",
            "version": "0.3.16",
            "icons": [
                {
                    "id": 91,
                    "name": "定位",
                    "code": 61525
                },
                {图标信息2},
                ...
            ],
            "download": {
                "eot": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/eot/version/0.3.16",
                "svg": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/svg/version/0.3.16",
                "ttf": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/ttf/version/0.3.16",
                "woff": "http://iconfont.corp.qunar.com/api/download/name/flight_adr_icon/type/woff/version/0.3.16"
            }"message": ""
        }
    }
    

下载地址 #

  • 根据项目名称、字体格式和项目版本下载对应字体文件,当版本不是最新版,无法下载
  • 正常直接下载文件,无法下载时返回错误信息

GET /api/download/name/:name/type/:type/version/:version

  • res
    {
        "res": false,
        "status": 500,
        "message": "当前0.3.15版本已过期,不可下载"
    }