# 资讯对接方案

资讯内容对应管理后台的文章管理模块,文章管理涉及到文章的分组,以及标签管理。 所以在对接导入文章资讯的时候,会涉及到文章的分组信息,文章的标签信息以及具体的文章详情。

资讯后台页面

接下来描述一下一般资讯导入的流程:

(1)拉取要导入金易联系统的文章信息,根据文章的id来查询 GET {API_HOST}/api/v1/open/adviserZone/forward/articles?sourceId= 如果该id在系统中已经存在,则会返回具体的文章信息,说明改文章已经在系统同步过并存在。当改接口的返回内容为空时,说明改文章还没有同步过,则此时需要进行该文章的同步;

(2)拿到该文章的栏目信息(假如文章没有栏目,那么需要在管理后台创建一个指定的栏目,然后把没有栏目的放到该栏目下), 可以通过 GET {API_HOST}/api/v1/open/adviserZone/forward/category 接口获取到当前系统的所有栏目信息,根据栏目的名称判断该栏目在系统中是否存在,如果不存在,则请求 {POST} {API_HOST}/api/v1/open/adviserZone/forward/category 接口进行栏目的添加,获取到对应的栏目id,请求Body示例:

{
    "name": "文章栏目"
}

(3)假如改文章还还有标签信息,则可以把相关的标签信息导入到金易联系统中,通过请求 GET {API_HOST}/api/v1/open/adviserZone/tags ,改接口会返回当前系统的所有标签信息,目前金易联的标签是包含层级关系(一级标签可以包含二级标签和三级标签),拿到标签名称和id的映射关系;

(4)在创建完了文章栏目和文章标签信息后,就可以开始调用文章创建的接口进行文章的上传,通过请求 POST {API_HOST}/api/v1/open/adviserZone/forward/articles ,请求的Body示例:

{
    "available": true,
    "categoryId": "5efadebb9740ba00018026c4",
    "cover": "3030303030302e66696e6f6765656b732e636f6d60588fb65651620001b3c1d4",
    "creator": "@staff_super_M00000:000000.finogeeks.com",
    "originAuthor": "张方",
    "originAuthorPracticeNum": "",
    "publishTime": null,
    "recommend": false,
    "reprintSource": "24小时资讯",
    "richText": "<div style="line-height:1.45;font-size:17px;"><p><strong>测试一下文章导入</strong></p><p><br></p><p>测试导入</p><p><br></p><p><img src="https://swan.finogeeks.club/api/v1/netdisk/open/download/3030303030302e66696e6f6765656b732e636f6d605890425651620001b3c1d8"></p></div>"
    "scheduleFlag": 0,
    "scheduleTime": "",
    "source": "reprint",
    "tagIds": ["5f38e8c401ace9000161b098"],
    "text": "测试一下文章导入",
    "title": "导入一篇文章看看",
    "type": "LONG"
}

通过上述的方式,就可以实现资讯的导入对接。