同步文章到多说

接口说明

同步文章信息到多说,用于评论同步之前。
如果包含文章内容建议控制单次同步的条数在10条以内,不包含文章内容,单次50条以内,或数据大小200kB以内,以避免服务器间通信超时。

URL

http://api.duoshuo.com/threads/import.`返回格式`

返回格式支持:json, jsonp

HTTP请求方式

POST

是否需要登录

请求参数

short_name string 必需

站点申请的多说二级域名。

secret string 必需

站点密钥。

threads array 必需

文章列表。(对于数组参数不了解的开发者,请看文末的示例)

下面为文章参数:(与文件导入方式参数一致)

[必须属性]

thread_key

文章在原站点中的id

title

文章标题

url

文章的URL地址

[可选属性]

content

文章内容

author_key

文章作者在原站点中的用户id

excerpt

文章摘要

comment_status

[open/close]文章是否开启评论

likes

文章被【喜欢】的次数,该属性导入意义不大,会在被喜欢之后重新统计

views

文章被查看的次数

返回数据示例

{
    "code":0,
    "response":
        {
        "1001":"1152985276292923001",
        "1002":"1152985276292923002",
        "1003":"1152985276292923003",
        "aboutme":"1152985276292923004"
        }
    }
}

返回数据参数说明

code int 一定返回

结果码。0为成功。失败时为错误码。

errorMessage string

错误消息。当code不为0时,返回错误消息。

response array

多说api返回结果中,通常在response中含有主要返回数据。当code为0时返回。response是以thread_key为主键,thread_id为值的数组

thread_id int64 一定返回

文章在多说的对应id

处理示例

php:https://github.com/duoshuo/duoshuo-wordpress/blob/master/duoshuo/Abstract.php 函数 exportPosts

asp:https://github.com/zsxsoft/duoshuo-zblog/blob/master/noresponse.asp 函数Export中的article一节(该示例由zblog开发者zsx提供)

代码示例

部分开发者对于http请求中的数组不是很了解,以下以同步用户到多说的接口中的参数准备为例,写一段代码示例:

<?php
$data = array();
$data['short_name'] = 'apitest';
$data['secret'] = '1231323123123';
$data['users'] = array();
$data['users'][] = array(
    'user_key' => 1,
    'name' => 'test',
    );
$data['users'][] = array(
    'user_key' => 2,
    'name' => 'hehe',
    );
$param = http_build_query($data, '', '&');
echo $param;

输出的结果是:

short_name=apitest&secret=1231323123123&users[0][user_key]=1&users[0][name]=test&users[1][user_key]=2&users[1][name]=hehe

php中使用了http_build_query来将php数据生成http请求的参数,在其他编程语言中,也存在类似的函数或包来完成相应工作,对于没有找到类似函数的开发者,请按照上述格式进行数据格式化