同步用户到多说

接口说明

同步用户信息到多说,用于历史评论中用户的展示,站点管理权限的匹配,以及文章被评论时的提醒等功能。
实现站点管理员权限匹配,需同时实现多说本地身份(JWT)功能,实现方法请参考这里

注意:请勿同步包括用户密码在内的用户隐私信息。多说提供的插件中,不会同步此类信息。站点或其他建站系统的开发人员,请注意避免此类信息的同步。

建议控制单次同步的条数在50条以内,或数据大小200kB以内,以避免服务器间通信超时。

URL

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

返回格式支持:json, jsonp

HTTP请求方式

POST

是否需要登录

请求参数

short_name string 必需

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

secret string 必需

站点密钥。

下面为用户参数:

users是一个数组

users[0][user_key]

这个用户在当前站点的ID

users[0][name]

用户的显示名

[可选属性]

users[0][role] 用户在原站点中的身份。role支持的参数值有4个: administrator 管理员, editor 编辑, author 作者, user 用户。

管理员将具有多说站点管理后台的所有控制权限,编辑将具有一定评论管理和数据查看权限。

users[0][avatar_url]

用户在站点中设定的头像地址

users[0][url]

用户设定的网址

users[0][email]

邮箱地址。用于被回复时的邮件提醒功能,以及评论管理时的显示等场合。

users[0][created_at]

用户创建时间。请注意时间的格式为yyyy-mm-dd hh:MM:ss。

2012/12/12 12:12:122012-1-12 12:12:12的格式,都不会被成功识别,第二个时间是因为月份应为01

返回数据示例

{
    "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`是以`user_key`为主键,`user_id`为值的数组

user_id int32 一定返回

用户在多说的对应id

代码示例

部分开发者对于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请求的参数,在其他编程语言中,也存在类似的函数或包来完成相应工作,对于没有找到类似函数的开发者,请按照上述格式进行数据格式化