wiki:baby3_developers/interface

Version 28 (modified by lianchijin, 11 years ago) (diff)

--

一.基本约定

  1.基本约定
  
  1.当接口处理正常时,HTTP STATUS CODE 返回给200。包括有正常的业务数据和数据为空的情况。
  
  2.当接口处理异常时,HTTP STATUS CODE 返回非200,并且给出具体的错误信息。
      {
         "desc":"给用户的提示放在这里"
      }
      
  3.接口默认的字符编码是UTF-8,接口需要实现对req-enc和resp-enc参数的支持。在JSP的最顶部,实现类似下面的代码:
  
          String queryString = request.getQueryString();
          String requestEncoding = getParam(queryString,"req_enc");
          String responseEncoding = getParam(queryString,"resp_enc");
          if(isNotBlank(requestEncoding)){
              request.setCharacterEncoding(requestEncoding);
          }
          if(isNotBlank(responseEncoding)){
              response.setCharacterEncoding(responseEncoding);
          }
  
  4.所有有写操作的数据接口,必须用POST方式提交,在接口里需要判断提交方式,拒绝GET的调用请求。
  
  5.接口中的JSON字符串,key都用双引号("")包裹,value是字符串类型时,也用双引号("")包裹;是数字类型时,不用引号
  
  6.需要分页的接口,统一返回以下字段:  pageNo,pageSize,total

二.接口列表

1.0首页

  备注:首页接口
  接口说明:参照亲子V2.0接口--1.0首页(http://trac.pc.com.cn/iphone/wiki/baby/interface#a1.0首页),添加参数v=2.1.0,
        根据参数 v >=2.1.0,则焦点图增加视频类文章页、问答专栏详情的推广,热门栏目增加崔玉涛专栏;不传参数v默认为2.0版本,返回数据不增加新数据
  接口开发:庄焕斌
  原始URL:
  mrobot请求URL:
     备孕首页:http://mrobot.pcbaby.com.cn/v2/qzbd/home/1
     怀孕首页:http://mrobot.pcbaby.com.cn/v2/qzbd/home/2
     育儿首页:http://mrobot.pcbaby.com.cn/v2/qzbd/home/3
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  v = 2.1.0   //版本号
  
  返回参数:
  {
   focus:[  //焦点图数据(增加视频类文章页、问答专栏详情的推广)
     {
       id:  // 推“专栏详情”的推广时id为专栏期数的id
       image:
       title:
       type:论坛(1列表、2终端);亲子学院(3列表、4终端);活动(5列表、6终端);工具(7终端);食谱(8终端);资讯(9终端);
            问答(10终端);百科(11终端);崔玉涛视频(12视频文章终端);专栏详情(13)
       url:(活动、工具终端打开需要url,不需要时为空字符串)
     }
   ],
   recommend:[   //四个推荐位内容
     {
       id:
       image:
       title:
       type:论坛(1列表、2终端);亲子学院(3列表、4终端);活动(5列表、6终端);工具(7终端);食谱(8终端);资讯(9终端);问答(10终端);百科(11终端)
       url:(活动、工具终端打开需要url,不需要时为空字符串)
     }
   ],
   recommendChannel:[    //热门栏目(增加崔玉涛专栏)
    {
      title:  //根据栏目名称跳转至对应模块
      type:  //热点栏目类型(type=5表示崔玉涛专栏)    
    }
   ],
   topFocus: [ //焦点图广告
    {
      cc-uri: "",
      image: "http://www1.pcbaby.com.cn/appguanggao/1.jpg?IVY_LEVEL_1?481456_307375",
      seq: 1,
      title: "广告",
      to-uri: "http://ivy.pconline.com.cn/adpuba/click?adid=307375&id=test.gjz.zicong.",
      updateAt: 1408678837215,
      vc-uri: "none"
    }
   ]
  }

2.0 崔玉涛专栏

  备注:崔玉涛专栏
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:

  返回参数:
{
   "status": 0, //状态码  0正常返回   非0请求错误
   "desc": "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "authorInformation" : //专家信息
     {
        "face" : ""   //专家头像
        "name" : ""   // 专家姓名
        "title" : ""  //职称
 	"position" : "" //职务
   	"introduction" : ""  //专家介绍
    },
   "ad": //广告
    {
        "image":  "" 
 	"adUrl"  :  ""
        "adType":"" //广告分类标签,用于app端统计广告点击情况
   },
   "hot": //育儿热点
     { 
        "title":"育儿热点",
        "section":[
           { 
              "categoryId":  //分类id
              "title": //分类标题 
           }
          ...
 	  ]
     },
   "video": //在线视频
    { 
        "title":"在线视频",
        "section":[
           {
             "videoId": // 视频id
             "title": //  视频标题
             "time":  //  视频时间
             "image": //  视频图片
           }
          ...
 	  ]
   },
   "question": //问答专栏
    { 
        "title":"问答专栏",
        "section":[
           {
              "columnsId": //  专栏期数id
              "title": //  专栏标题
              "time":  //  时间
              "image": //  专栏图片
           }
           ...
 	  ]
    },
    "article": //育儿文章
    { 
        "title":"育儿文章",
        "section":[
            {
                "articleId": //  文章id
                "title": //  文章标题
                "time":  //  时间
                "image": //  文章图片
             }
             ...
 	  ]
   }
}

3.0 育儿热点

  备注:育儿热点
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:

  返回参数:
{
    status: 0, //状态码  0正常返回   非0请求错误
    desc: "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "total": 20,  //分类总数
   "datas": //返回数据
       [
           {
              "categoryId": //  分类id
              "title": //  标题
           }
           ...
      ]
}

3.1问题列表

  备注:问题列表
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  categoryId  //分类id
  pageNo
  pageSize

  返回参数:
{
   "status":   //状态码  0正常返回   非0请求错误
   "desc": ""  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "datas": //问答数据
       [
          {
            "qId":  // 问题id
            "question": //问题描述
            "answer":  // 回答内容
          },
          ...
      ]
  "total": 20,  //问答总数
  "pageNo": 1, //当前页码
  "pageSize": 20, //每页条数

}

4.0视频列表

  备注:视频列表
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  pageNo
  pageSize

  返回参数:
{
    status: 0, //状态码  0正常返回   非0请求错误
    desc: "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "total": 20,  //列表总数
   "pageNo": 1, //当前页码
   "pageSize": 20, //每页条数
   "datas": //返回数据
       [
             {
                "videoId": //  视频id
                "title": //  视频标题
                "time":  //  视频时间(均以毫秒为单位)
                "image": //  列表图片
                "videoType": //视频分类标签,用于app端统计视频点击播放情况
             }
             ...
      ]
}

4.1视频终端页

  备注:获取视频终端页
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  缓存方式:无
  缓存时间:无
  请求参数:
  videoId // 视频id

  返回结果:HTML页面
  点击播放视频跳转协议:pcbabybrowser://PCBabyVideo/
  用于视频播放的数据,需要在里面加入json
  /*@_HTML_META_START_
  {
    "videoUrl": //  视频播放url
    "adType" ://  广告分类标签,用于app端统计广告点击情况
    "adTime":  //  广告倒计时
    "adDetailUrl": // 广告详情链接
    "adUrl":  // mp4广告url
 }
 _HTML_META_END_@*/

5.0问答专栏

  备注:问答专栏
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  pageNo
  pageSize

  返回参数:
{
    status: 0, //状态码  0正常返回   非0请求错误
    desc: "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "total": 20,  //列表总数
   "pageNo": 1, //当前页码
   "pageSize": 20, //每页条数
   "datas": //返回数据
       [
             {
                "columnsId": //  专栏期数id
                "title": //  专栏标题
                "time":  //  时间
                "image": //  专栏图片
             }
             ...
      ]
}

5.1专栏详情

  备注:专栏详情
  接口说明:只有请求第一页的问答数据(questionDatas)时才返回专栏数据(columnData),其他页时返回为空
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  columnsId  //专栏期数id

  返回参数:
{
   "status":   //状态码  0正常返回   非0请求错误
   "desc": ""  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "columnData": //专栏数据
   {
     "columnId":  //  专栏期数id
     "title":   //  专栏标题
     "expertFace": //专家头像
     "authorName":  //专家名
     "department"://专家所在部门
     "hospital":    //专家所在医院名称
     "typeId":  //专家所在领域id
     "detail":   //专栏详情介绍
   }
   "questionDatas": //问答数据
       [
          {
            "questionId":  // 问题id
            "authorFace":  // 用户头像
            "authorName":  // 用户名称
            "question":   // 问题描述
            "answer":  // 回答内容
            "authorId":  //用户id
          },
             ...
      ]
  "total": 20,  //问答总数
  "pageNo": 1, //当前页码
  "pageSize": 20, //每页条数

}
5.1.2提问
  备注:提问,默认为崔玉涛专栏的提问
  接口开发:
  请求URL:http://
  接口说明:
  HTTP请求方式:post
  是否需要登录:是
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
   title:问题标题
   des = 问题描述;
   typeId = 问题分类id
   specialistId:专家id,
   设置header  Cookie = "common_session_id=xxxx";

  返回参数
  {
   msg:
   result: //结果状态码   0提问成功  非0返回对应的出错信息 
  }

5.2 问答终端

  备注:问答终端  
  接口说明:参照亲子V2.0接口--5.2问答详情(http://trac.pc.com.cn/iphone/wiki/baby/interface#a5.2问答详情),增加参数type=1(表示崔玉涛栏目下的问题),则终端页返回浮层广告数据
  接口开发:
  原始URL:
  请求URL:
  
  HTTP请求方式:get
  是否需要登录:否
  返回格式:HTML页面
  缓存方式:无
  缓存时间:无
  请求参数:
  qId:  // 问题id
  type = 1 // 表示崔玉涛栏目下的问题

  返回参数:

  点击协议: 采纳答案pcaction://adopt-answer/id
  附:
  用于浮层广告的数据,需要在里面加入json
  /*@_HTML_META_START_
    {
        "image":  "" 
 	"adUrl"  :  ""
        "adType":"" //广告分类标签,用于app端统计广告点击情况
   }
  _HTML_META_END_@*/

6.0 文章列表

  备注:文章列表
  接口开发:
  原始URL:
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  pageNo
  pageSize

  返回参数:
{
    status: 0, //状态码  0正常返回   非0请求错误
    desc: "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "total": 20,  //列表总数
   "pageNo": 1, //当前页码
   "pageSize": 20, //每页条数
   "datas": //返回数据
       [
             {
                "articleId": //  文章id
                "title": //  文章标题
                "time":  //  时间
                "image": //  文章图片
             }
             ...
      ]
}

6.1 文章终端

  备注:文章终端  
  接口说明:同二胎宝典接口--4.资讯文章终端接口 (mrobot):
     http://trac.pc.com.cn/iphone/wiki/2ndchild/interface#a4.资讯文章终端接口mrobot

7.0 百科图集

  备注:百科图集
  接口开发:陈旭
  原始URL:http://pp.pcbaby.com.cn/template/pcbaby/Content_Albums_List.jsp?REQUEST_CODE=303&albumsId=24068
  请求URL:
  HTTP请求方式:get
  是否需要登录:否
  返回格式:JSON
  缓存方式:无
  缓存时间:无
  请求参数:
  REQUEST_CODE=303 //请求代码
  albumsId=24068  //图集id

  返回参数:
{
    status: 0, //状态码  0正常返回   非0请求错误
    desc: "",  //提示信息    status=0提示信息为空;status非0,给出对应的出错提示信息
   "total": 15,   //当前图集中图片总数
   "pageNo": 1, 
   "pageSize": 15, 
   "pageCount":1,
   "ablumsList": //图集数据
     [
        {
          "imageContent":  //图片描述
          "imageId":  //图片id
          "imageTitle":  //图集标题
          "thumb":  //小图url
          "url":  //图片url
        }
       ...
    ]
}