| | 1 | == 摄影部落IPAD版接口 == |
| | 2 | |
| | 3 | === 1.基本约定 === |
| | 4 | {{{ |
| | 5 | 1.当接口处理正常时,HTTP STATUS CODE 返回给200。包括有正常的业务数据和数据为空的情况。 |
| | 6 | |
| | 7 | 2.当接口处理异常时,HTTP STATUS CODE 返回给500,并且给出具体的错误信息。 |
| | 8 | { |
| | 9 | "uri" : "/intf/albums-by-type.jsp", |
| | 10 | "error-code":"20502", |
| | 11 | "error-desc":"Need you follow uid.", |
| | 12 | "user-notice":"给用户的提示放在这里" |
| | 13 | } |
| | 14 | |
| | 15 | |
| | 16 | 3.接口默认的字符编码是UTF-8,接口需要实现对req-enc和resp-enc参数的支持。在JSP的最顶部,实现类似下面的代码: |
| | 17 | |
| | 18 | String queryString = request.getQueryString(); |
| | 19 | String requestEncoding = getParam(queryString,"req_enc"); |
| | 20 | String responseEncoding = getParam(queryString,"resp_enc"); |
| | 21 | if(isNotBlank(requestEncoding)){ |
| | 22 | request.setCharacterEncoding(requestEncoding); |
| | 23 | } |
| | 24 | if(isNotBlank(responseEncoding)){ |
| | 25 | response.setCharacterEncoding(responseEncoding); |
| | 26 | } |
| | 27 | |
| | 28 | 4.所有有写操作的数据接口,必须用POST方式提交,在接口里需要判断提交方式,拒绝GET的调用请求。 |
| | 29 | |
| | 30 | 5.接口中的JSON字符串,key都用双引号("")包裹,value是字符串类型时,也用双引号("")包裹;是数字类型时,不用引号。 |
| | 31 | |
| | 32 | }}} |
| | 33 | |
| | 34 | |
| | 35 | |
| | 36 | == 2. 接口列表 == |
| | 37 | |
| | 38 | === 2.1 http://dp.pconline.com.cn/intf/ipad/albums-by-type.jsp 获取分类相册 === |
| | 39 | {{{ |
| | 40 | HTTP请求方式:get |
| | 41 | 是否需要登录:否 |
| | 42 | 请求参数:page-no:请求的页码,第一次为1。 |
| | 43 | page-size:每个页面的记录数。 |
| | 44 | album-type:相册类型(人像:portrait,风光:landscape,生态:nature,纪实:documentary,其他:other) |
| | 45 | pick: 精华作品(0否,1是;默认为否) |
| | 46 | recommend :推荐作品(0否,1是;默认为否) |
| | 47 | order-by:排序字段(by-time(按时间逆序,默认用这个排序),by-clicks(按点击量逆序),by-recommend-time(按推荐时间逆序,仅仅在recommend=1是有效)) |
| | 48 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 49 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 50 | time: 搜索时间范围的作品,默认time=365(即一年内的) |
| | 51 | |
| | 52 | 返回参数: |
| | 53 | { "page-no":1, |
| | 54 | "page-size":10, |
| | 55 | "total":100, |
| | 56 | "album-type":"nature", |
| | 57 | "order-by":"by-clicls", |
| | 58 | "albums":[{"uid":2323, |
| | 59 | "small-img-src":"http://img.pconline.com.cn/123.jpg", |
| | 60 | "album-id":1233, |
| | 61 | "theme":"拍摄主题", |
| | 62 | "album-name":"图集名称", |
| | 63 | "nickname":"摄影师昵称", |
| | 64 | "is-picked":0, |
| | 65 | "is-recommend":0, |
| | 66 | "create-time":"yyyy-mm-dd hh:mi", |
| | 67 | "vote":2233, |
| | 68 | "clicks":2332 |
| | 69 | }] |
| | 70 | } |
| | 71 | page-no:请求的页码,第一次为1。 |
| | 72 | page-size:每个页面的记录数。 |
| | 73 | total:这次查询的记录总数。 |
| | 74 | img-src:封面图片URL |
| | 75 | uid:用户id |
| | 76 | album-id:图集ID |
| | 77 | theme:拍摄主题 |
| | 78 | album-name:图集名称 |
| | 79 | nickname:摄影师昵称 |
| | 80 | is-picked:1-精华作品,0-普通作品 |
| | 81 | is-recommend:1-版主推荐作品,0-普通作品 |
| | 82 | create-time:创建时间 |
| | 83 | vote:所得票数 |
| | 84 | clicks:点击数 |
| | 85 | |
| | 86 | 排序方式:图集创建时间逆序 |
| | 87 | }}} |
| | 88 | |
| | 89 | |
| | 90 | === 2.2 http://dp.pconline.com.cn/intf/ipad/search.jsp === |
| | 91 | {{{ |
| | 92 | HTTP请求方式:get |
| | 93 | 是否需要登录:否 |
| | 94 | 请求参数:kw:查询关键字 |
| | 95 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 96 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 97 | page-no:请求的页码,第一次为1。 |
| | 98 | page-size:每个页面的记录数。 |
| | 99 | order-by:排序字段(by-time(按时间逆序,默认用这个排序),by-clicks(按点击量逆序)) |
| | 100 | time: 搜索时间范围的作品,默认time=365(即一年内的) |
| | 101 | 返回参数: |
| | 102 | {"page-no":1, |
| | 103 | "page-size":10, |
| | 104 | "total":100, |
| | 105 | "order-by":"by-time", |
| | 106 | "kw":"蓝天白云", |
| | 107 | "order-by":"by-time", |
| | 108 | "result":[{"uid":23234, |
| | 109 | "small-img-src":"http://img.pconline.com.cn/123.jpg", |
| | 110 | "album-id":1233, |
| | 111 | "theme":"拍摄主题", |
| | 112 | "album-name":"图集名称", |
| | 113 | "nickname":"摄影师昵称", |
| | 114 | "is-picked":1, |
| | 115 | "create-time":"yyyy-mm-dd hh:mi", |
| | 116 | "vote":232323, |
| | 117 | "clicks":2323 |
| | 118 | }] |
| | 119 | } |
| | 120 | page-no:请求的页码,第一次为1。 |
| | 121 | page-size:每个页面的记录数。 |
| | 122 | total:这次查询的记录总数。 |
| | 123 | order-by:结果集的排序方式。 |
| | 124 | kw:搜索关键字(采用UTF-8方式编码) |
| | 125 | uid:用户id |
| | 126 | small-img-src:封面图片URL |
| | 127 | album-id:图集ID |
| | 128 | theme:拍摄主题 |
| | 129 | album-name:图集名称 |
| | 130 | nickname:摄影师昵称 |
| | 131 | is-picked:1-精华作品,0-普调作品 |
| | 132 | create-time:创建时间 |
| | 133 | vote:所得票数 |
| | 134 | clicks:点击数 |
| | 135 | |
| | 136 | 排序方式:图集创建时间逆序 |
| | 137 | }}} |
| | 138 | |
| | 139 | === 2.3 http://dp.pconline.com.cn/intf/ipad/user-photos.jsp === |
| | 140 | |
| | 141 | {{{ |
| | 142 | HTTP请求方式:get |
| | 143 | 是否需要登录:否 |
| | 144 | 请求参数:album-id:图集id |
| | 145 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 146 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 147 | page-no:请求的页码,第一次为1。 |
| | 148 | page-size:每个页面的记录数。 |
| | 149 | 返回参数: |
| | 150 | {"page-no":1, |
| | 151 | "page-size":10, |
| | 152 | "total":100, |
| | 153 | "uid":2342, |
| | 154 | "logo":"http://upc.pconline.com.cn/23323.jpg", |
| | 155 | "album-name":"图集名称", |
| | 156 | "nickname":"摄影师昵称", |
| | 157 | "is-picked":0, |
| | 158 | "album-id":1233, |
| | 159 | "theme":"拍摄主题", |
| | 160 | "location":"拍摄地点", |
| | 161 | "timer":"拍摄时间(yyyy-mm-dd)", |
| | 162 | "nature":"作品性质", |
| | 163 | "vote":233, |
| | 164 | "clicks":23223, |
| | 165 | "abstruct":"作品概括", |
| | 166 | "photos":[{"photo-id":23234, |
| | 167 | "small-img-src":"http://img.pconline.com.cn/123.jpg", |
| | 168 | "big-img-src":"http://img.pconline.com.cn/123.jpg", |
| | 169 | "exposure":"曝光方式", |
| | 170 | "aperture":"光圈", |
| | 171 | "shutter":"快门", |
| | 172 | "iso":"iso值", |
| | 173 | "ev":"曝光补偿", |
| | 174 | "camera":"相机"} |
| | 175 | ] |
| | 176 | } |
| | 177 | |
| | 178 | page-no:请求的页码,第一次为1。 |
| | 179 | page-size:每个页面的记录数。 |
| | 180 | total:这次查询的记录总数。 |
| | 181 | uid:用户id |
| | 182 | logo:用户头像 |
| | 183 | album-name:图集名称 |
| | 184 | nickname:摄影师昵称 |
| | 185 | is-picked:1-精华作品,0-普调作品 |
| | 186 | album-id:图集ID |
| | 187 | theme:拍摄主题 |
| | 188 | location:拍摄地点 |
| | 189 | timer:拍摄时间 |
| | 190 | nature:作品性质 |
| | 191 | vote:所得票数 |
| | 192 | clicks:点击数 |
| | 193 | abstruct:作品概括 |
| | 194 | photo-id:图片ID |
| | 195 | small-img-src:封面图片URL |
| | 196 | big-img-src:大图URL |
| | 197 | exposure:曝光方式 |
| | 198 | aperture:光圈 |
| | 199 | shutter:快门 |
| | 200 | iso:iso值 |
| | 201 | ev:曝光补偿 |
| | 202 | camera:相机 |
| | 203 | |
| | 204 | 排序方式:按图集保存的顺序,和WEB上的图片显示顺序保持一致 |
| | 205 | }}} |
| | 206 | |
| | 207 | === 2.4 http://dp.pconline.com.cn/intf/ipad/user-albums.jsp === |
| | 208 | {{{ |
| | 209 | HTTP请求方式:get |
| | 210 | 是否需要登录:否 |
| | 211 | 提交参数:uids:被关注的用户id集合,id之间用逗号分隔。例如(233,233232,434334,554,556534) |
| | 212 | page-no:单个作者的图集分页页码 |
| | 213 | page-size:单个作者的图集分页数量 |
| | 214 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 215 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 216 | 返回参数: |
| | 217 | {"users":[{"page-size":5, |
| | 218 | "page-no":1, |
| | 219 | "total":1, |
| | 220 | "uid":1212, |
| | 221 | "logo":"http://upc.pconline.com.cn/1233", |
| | 222 | "user-name":"用户名称", |
| | 223 | "nickname":"昵称", |
| | 224 | "user-title":"用户头衔", |
| | 225 | "user-address":"地区", |
| | 226 | "albums":[{"album-id":3232, |
| | 227 | "small-img-src":"http://dp.pconline.com.cn/3223.jpg", |
| | 228 | "is-recommend":0}, |
| | 229 | {"album-id":2343, |
| | 230 | "small-img-src":"http://dp.pconline.com.cn/3344.jpg", |
| | 231 | "is-recommend":1 |
| | 232 | }] |
| | 233 | }] |
| | 234 | } |
| | 235 | |
| | 236 | page-no:单个作者的图集分页页码 |
| | 237 | page-size:单个作者的图集分页数量 |
| | 238 | total:单个作者的图集页码总数 |
| | 239 | uid:用户ID |
| | 240 | logo:用户头像URL |
| | 241 | user-name:用户名 |
| | 242 | nickname:用户昵称 |
| | 243 | user-title:用户头衔 |
| | 244 | user-address:用户地区 |
| | 245 | album-id:图集ID |
| | 246 | small-img-src:图集封面URL |
| | 247 | is-recommend:1-推荐作品,0-普通作品 |
| | 248 | |
| | 249 | 排序方式:1、不同的用户,uids中,uid的先后顺序来进行排列。 |
| | 250 | 2、同一个用户下的图集,先出个人推荐区的(这里按网站上个人推荐区的顺序排),后出普通图集(按图集发表时间逆序). |
| | 251 | 其他:个人推荐区的数据和该用户的图集,数据是重叠的。需要进行数据去处重复的处理。 |
| | 252 | |
| | 253 | }}} |
| | 254 | |
| | 255 | |
| | 256 | === 2.5 http://dp.pconline.com.cn/intf/ipad/comment-post.jsp === |
| | 257 | {{{ |
| | 258 | HTTP请求方式:post |
| | 259 | 是否需要登录:否,这里会有匿名评论的情况。 |
| | 260 | 提交参数:album-id:图集id |
| | 261 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 262 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 263 | common_session_id:登录后的session id(非必填参数) |
| | 264 | comment:评论内容 |
| | 265 | 返回参数: |
| | 266 | {"album-id":223,"comment-id":12233,"comment":"评论内容","timer":"评论时间"} |
| | 267 | album-id:图集id。 |
| | 268 | comment-id:评论ID。 |
| | 269 | comment:评论正文。 |
| | 270 | timer:评论时间。(yyyy-mm-dd hh:mi) |
| | 271 | }}} |
| | 272 | |
| | 273 | === 2.6 http://dp.pconline.com.cn/intf/ipad/comment-list.jsp === |
| | 274 | {{{ |
| | 275 | HTTP请求方式:get |
| | 276 | 是否需要登录:否 |
| | 277 | 提交参数:album-id:图集id |
| | 278 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 279 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 280 | page-no:请求的页码,第一次为1。 |
| | 281 | page-size:每个页面的记录数。 |
| | 282 | 返回参数: |
| | 283 | {"page-no":1, |
| | 284 | "page-size":10, |
| | 285 | "total":100, |
| | 286 | "album-id":2323, |
| | 287 | "comments":[{"comment-id":1233, |
| | 288 | "comment":"评论正文", |
| | 289 | "timer":"评论时间"}, |
| | 290 | {"comment-id":1233, |
| | 291 | "comment":"评论正文", |
| | 292 | "timer":"评论时间"} |
| | 293 | ] |
| | 294 | } |
| | 295 | page-no:请求的页码,第一次为1。 |
| | 296 | page-size:每个页面的记录数。 |
| | 297 | total:这次查询的记录总数。 |
| | 298 | album-id:图集id |
| | 299 | comment-id:评论id |
| | 300 | comment:评论正文 |
| | 301 | timer:评论时间(格式是 yy-mm-dd hi:mm) |
| | 302 | 排序方式:按timer倒序 |
| | 303 | }}} |
| | 304 | |
| | 305 | === 2.7 http://dp.pconline.com.cn/intf/ipad/vote.jsp === |
| | 306 | {{{ |
| | 307 | HTTP请求方式:post |
| | 308 | 是否需要登录:否 |
| | 309 | 提交参数:album-id:图集id |
| | 310 | device-id:设备ID |
| | 311 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 312 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 313 | 其他规则:一个设备,一天内(到当天晚上的23:59:59),只能对单个作品,投票一次 |
| | 314 | 返回参数: |
| | 315 | {"album-id":2323,"vote":2323} |
| | 316 | album-id:图集ID |
| | 317 | vote:投票数 |
| | 318 | }}} |
| | 319 | |
| | 320 | |
| | 321 | === 2.8 /intf/version.json === |
| | 322 | {{{ |
| | 323 | {"version":"3.0.1","release-date":"yyyy-mm-dd","release-desc":"发布说明","release-note":"发布的新功能列表"} |
| | 324 | |
| | 325 | }}} |
| | 326 | |
| | 327 | === 2.9 /intf/home.json === |
| | 328 | {{{ |
| | 329 | |
| | 330 | }}} |
| | 331 | |
| | 332 | === 2.10 /intf/hot-users.json === |
| | 333 | {{{ |
| | 334 | |
| | 335 | HTTP请求方式:get |
| | 336 | 是否需要登录:否 |
| | 337 | 提交参数: |
| | 338 | page-no:单个作者的图集分页页码 |
| | 339 | page-size:单个作者的图集分页数量 |
| | 340 | req-enc:请求时字符编码,缺省是UTF-8 |
| | 341 | resp-enc:响应时字符编码,缺省是UTF-8 |
| | 342 | 返回参数: |
| | 343 | {"users":[{"page-size":5, |
| | 344 | "page-no":1, |
| | 345 | "total":1, |
| | 346 | "uid":1212, |
| | 347 | "logo":"http://upc.pconline.com.cn/1233", |
| | 348 | "user-name":"用户名称", |
| | 349 | "nickname":"昵称", |
| | 350 | "user-title":"用户头衔", |
| | 351 | "user-address":"地区", |
| | 352 | "albums":[{"album-id":3232, |
| | 353 | "small-img-src":"http://dp.pconline.com.cn/3223.jpg", |
| | 354 | "is-recommend":0}, |
| | 355 | {"album-id":2343, |
| | 356 | "small-img-src":"http://dp.pconline.com.cn/3344.jpg", |
| | 357 | "is-recommend":1 |
| | 358 | }] |
| | 359 | }] |
| | 360 | } |
| | 361 | |
| | 362 | page-no:单个作者的图集分页页码 |
| | 363 | page-size:单个作者的图集分页数量 |
| | 364 | total:单个作者的图集页码总数 |
| | 365 | uid:用户ID |
| | 366 | logo:用户头像URL |
| | 367 | user-name:用户名 |
| | 368 | nickname:用户昵称 |
| | 369 | user-title:用户头衔 |
| | 370 | user-address:用户地区 |
| | 371 | album-id:图集ID |
| | 372 | small-img-src:图集封面URL |
| | 373 | is-recommend:1-推荐作品,0-普通作品 |
| | 374 | |
| | 375 | 排序方式: |
| | 376 | 1、同一个用户下的图集,先出个人推荐区的(这里按网站上个人推荐区的顺序排),后出普通图集(按图集发表时间逆序). |
| | 377 | |
| | 378 | 其他:个人推荐区的数据和该用户的图集,数据是重叠的。需要进行数据去处重复的处理。 |
| | 379 | |
| | 380 | }}} |
| | 381 | |
| | 382 | == 3. Error Code == |
| | 383 | |
| | 384 | [[http://rdtrac.pc.com.cn/ipad-album/wiki/error-code|Error Code]] |
| | 385 | |
| | 386 | == 4. 修改历史 == |
| | 387 | 2011-12-16 |
| | 388 | - 修改接口2.4({{{http://dp.pconline.com.cn/intf/ipad/user-albums.jsp}}}),使其符合框架ver1.0.4中,page-10的规则。取消is-picked输出结果,增加is-recommend参数。 |
| | 389 | |
| | 390 | 2011-12-15: |
| | 391 | - 修改接口2.1(/intf/albums-by-type.jsp),增加time参数 |
| | 392 | - 修改接口2.2(/intf/search.jsp),增加time参数 |
| | 393 | - 接口正式地址 |
| | 394 | - 增加接口2.8(/intf/version.json).这个无需实现,仅仅在发布后用来提醒网友进行版本更新。 |
| | 395 | |
| | 396 | 2011-12-13: |
| | 397 | - 修改接口2.1(/intf/albums-by-type.jsp ),增加recommend参数和排序方式。 |
| | 398 | - 修正接口2.6(/intf/comment-list.jsp)去掉无用参数,补上分页参数。 |
| | 399 | - 完善了Error Code |
| | 400 | |
| | 401 | 2011-12-12: |
| | 402 | - 增加接口2.1( /intf/albums-by-type.jsp )、接口2.2(/intf/search.jsp)中关于排序部分的描述 |
| | 403 | - 增加公用错误编码 |