接口标识:show
接口url:https://你的网站/api/index.php?action=show&id=10
接口参数:
字段名称 | 字段说明 | 类型 | 必填 | 备注 |
---|---|---|---|---|
id | 文章id | num | 必填 | 文章id |
relation | 调用相关文章 | num | 可不填 | 是否调用相关文章,默认0不调用 |
num | 调用相关文章数量 | num | 可不填 | 默认10(之前文档误写成relationnum,请注意修改) |
tag | 是否调用tag | bool | 可不填 | 默认否 |
小程序代码
- swan.request({
- url: app.globalData.api + "action=show",
- data: {
- typeid: that.data.typeid,
- id: that.data.id,
- relation: 1,//开启调用相关推荐
- aid: app.globalData.aid
- },
- method: 'POST',
- header: {
- 'content-type': 'application/x-www-form-urlencoded',
- 'x-appsecret': app.globalData.appsecret
- },
- success: function (res) {
- var content = res.data.data;
- ......
- }
- })
说明:
(1)该页面引入了require('../../utils/util.js'),里边封装的有对时间的处理,因为api返回的是时间戳,需要处理
(2)由于小程序不支持直接的html标签,所以引入bdparse插件,具体参考demo。
- content.relations[i].pubdate = util.formatTime(content.relations[i].pubdate, 'Y-M-D');
(3)relation默认关闭,需要修改代码来开启,参考demo
(4)字段中如果有数组,需要进行特殊处理,代码实例:
(5)相关内容推荐,swan页面做了判断,如果没有内容默认不显示,而相关评价却没加,自己根据需要修改。
- //判断是否有组图自动判断
- if (content.pictureurls){
- content.pictureurls = JSON.parse(content.pictureurls)
- }
(6)接口返回的数据包含文章的上一篇和下一篇,调用代码:
(7)某些字段如果不是全部模型都有的,调用之前最好是加个判断,防止某些模型该字段不存在报错
- that.setData({
- pre: content.preNext.pre,
- next: content.preNext.next,
- })
- if (content.hasOwnProperty("baojia")) { //首先判断baojia字段是否存在
- if (content.baojia.length > 0) {
- bdParse.bdParse('baojia', 'html', content.baojia, that, 5),
- that.setData({
- baojiakg: true,
- })
- }
- }
前端:
- <view class="nextpage mt10" bindtap="nextpage" data-id="{{pre.id}}">上一篇:{{pre.title}}</view>
- <view class="nextpage" bindtap="nextpage" data-id="{{next.id}}" >下一篇:{{next.title}}</view>