开发参数
数据库名称:nonedb_test
数据库秘钥:000000000000000000000000000000
接口说明
接口地址:https://service.nonedb.com/:database/:collection/set
:database
代表数据库名称,如nonedb_test
:collection
代表数据集,数据存放在数据集内
请求方式
post
参数格式
json
请求参数
字段名 | 类型 | 说明 | 举例 |
---|---|---|---|
where | json | 查询条件的键值对,键值对必须以键的ASCII码值进行排序 | {"phone":16666666666} |
values | json | 要更新的键值对 ,键值对必须以键的ASCII码值进行排序 | {"nick_name":"更新名称"} |
timestamp | int | linux时间戳,精确到秒 | 1587559144 |
sign | string | 签名信息,将values,timestamp拼接后,加上数据库秘钥key计算sha1得到 |
返回结果
字段名 | 类型 | 说明 | 举例 |
---|---|---|---|
result_code | string | success代表成功,fail代表失败 | |
result_desc | string | 结果描述 |
示例:将集合profile里面手机为16666666666的用户的nick_name更新为新的名称
step1.确定数据库和数据集:数据库nonedb_test ,数据集profile
则对应接口请求地址为:https://service.nonedb.com/nonedb_test/profile/set
step2.确定接口参数内容
where: {"phone":16666666666}
values: {"nick_name":"newname"}
timestamp:1587559144
step3.生成签名串串
对所有非空参数按照键值的英文字母排序,最后拼接上数据库的秘钥key生成签名串 签名串为:
timestamp=1587559144&values={"nick_name":"newname"}&where={"phone":16666666666}&key=000000000000000000000000000000
step4:计算签名
对签名串进行sha1计算,得到签名 sign为:
37f65b277d23fc193e750ab44b39dba7d8672d89
step5:更新数据
发送请求:
curl https://service.nonedb.com/nonedb_test/profile/set -X POST -d '{"where": {"phone":16666666666},"values":{"nick_name":"newname"},"timestamp":1587559144,"sign":"37f65b277d23fc193e750ab44b39dba7d8672d89"}' --header "Content-Type: application/json"
收到请求:
{"data":[{"_id":"5ea03ea188e95627ea7c4ad4","nick_name":"hello world","openid":"1","phone":16666666666,"register_timestamp":1587559144},{"_id":"5ea03ead88e95627ea7c4b06","nick_name":"hello world","openid":"1","phone":16666666666,"register_timestamp":1587559144}],"{"result_code":"success","result_des":"set操作成功","result_info":{"matched":3,"updated":3}}%
网友评论