HTTP/HTTPS
请求协议
APIUSB / 平台接口 / 获取单人会话消息列表
获取单人会话消息列表
接口地址:https://api.apiusb.com/api/platform?s=Platform.ChatMessage.GetMessageList
接口描述: 获取与某一位会员的单人会话消息列表
接口参数
参数名字 | 类型 | 是否必须 | 默认值 | 其他 | 说明 |
---|---|---|---|---|---|
access_token | 字符串 | 可选 | 访问令牌,仅当开启签名验证时需要传递,生成令牌可使用App.Auth.ApplyToken接口 | ||
chat_message_to_uuid | 字符串 | 可选 | - | 最小:32;最大:32 | 私信对话的会员uuid |
last_id | 整型 | 可选 | 0 | 最小:0 | 上一次的消息ID,通过传递前面的私信消息ID以保证消息的连贯性。 |
direction | 枚举类型 | 可选 | - | 范围:up/down | 获取私信消息的方向,up表示向上滑动,即取前面的旧消息;down表示向下滑动,即获取最新的消息。 |
perpage | 整型 | 可选 | 20 | 最小:1;最大:100 | 分页数量 |
返回字段
返回结果 | 类型 | 说明 |
---|---|---|
ret | 整型 | 状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务器错误 |
data | 对象或混合类型 | 业务数据,由各自接口指定,通常为对象 |
data.items | 数组 | 会话消息列表 |
data.items[].id | 数组 | 会话消息ID |
data.items[].chat_message_to_uuid | 数组 | 当前会话的会员uuid |
data.items[].chat_message_data | 数组 | 消息数据结构体 |
data.items[].chat_message_type | 数组 | 消息类型 |
data.items[].chat_message_is_read | 数组 | 是否已读,0未读1已读 |
data.items[].chat_message_io | 数组 | 消息方向,in表示自己发出的,out表示收到的 |
data.items[].add_time | 数组 | 消息发送时间 |
msg | 字符串 | 提示信息,失败时的错误提示 |
在线测试
参数 | 是否必须 | 值 |
---|---|---|
service | 必须 | |
access_token | 可选 | |
chat_message_to_uuid | 可选 | |
last_id | 可选 | |
direction | 可选 | |
perpage | 可选 |
客户端请求示例
{
"ret": 200,
"data": {
"items": [
{
"id": 2,
"uuid": "HTogSDnO9kHwjBVkv8La7eQ4ehI0BVhx",
"chat_message_to_uuid": "12345678123456781234567812345678",
"chat_message_type": "text",
"chat_message_data": "hello word",
"chat_message_is_read": 0,
"chat_message_io": "out",
"add_time": "2020-07-03 11:51:14"
}
]
},
"msg": "",
"debug": {
"stack": [
"[#1 - 0ms - PHALAPI_INIT]E:\\www\\api\\public\\api\\platform.php(51)",
"[#2 - 1.6ms - PHALAPI_RESPONSE]E:\\www\\api\\vendor\\phalapi\\kernal\\src\\PhalApi.php(46)",
"[#3 - 52.6ms - PHALAPI_FINISH]E:\\www\\api\\vendor\\phalapi\\kernal\\src\\PhalApi.php(74)"
],
"sqls": [],
"version": "2.15.0"
}
}
curl https://api.apiusb.com/api/platform?s=Platform.ChatMessage.GetMessageList&chat_message_to_uuid=12345678123456781234567812345678&last_id=1&direction=up&perpage=20
{
"ret": 200,
"data": {
"items": [
{
"id": 2,
"uuid": "HTogSDnO9kHwjBVkv8La7eQ4ehI0BVhx",
"chat_message_to_uuid": "12345678123456781234567812345678",
"chat_message_type": "text",
"chat_message_data": "hello word",
"chat_message_is_read": 0,
"chat_message_io": "out",
"add_time": "2020-07-03 11:51:14"
}
]
},
"msg": "",
"debug": {
"stack": [
"[#1 - 0ms - PHALAPI_INIT]E:\\www\\api\\public\\api\\platform.php(51)",
"[#2 - 1.6ms - PHALAPI_RESPONSE]E:\\www\\api\\vendor\\phalapi\\kernal\\src\\PhalApi.php(46)",
"[#3 - 52.6ms - PHALAPI_FINISH]E:\\www\\api\\vendor\\phalapi\\kernal\\src\\PhalApi.php(74)"
],
"sqls": [],
"version": "2.15.0"
}
}
$.ajax({
url: "https://api.apiusb.com/api/platform",
data: {s: "Platform.ChatMessage.GetMessageList", chat_message_to_uuid: "12345678123456781234567812345678", last_id: 1,direction: "up",perpage: 20},
dataType: 'json',
success: function (response, status, xhr) {
console.log(response);
}
});
<?php
require_once dirname(__FILE__) . '/PhalApiClient.php';
$client = PhalApiClient::create()
->withHost('https://api.apiusb.com/api/platform');$rs = $client->reset()
->withService('Platform.ChatMessage.GetMessageList')
->withParams('chat_message_to_uuid', '12345678123456781234567812345678')
->withParams('last_id', '1')
->withParams('direction', 'up')
->withParams('perpage', '20')
->withTimeout(3000)
->request();
// ret状态码,200表示成功
var_dump($rs->getRet());
// 业务数据
var_dump($rs->getData());
// 提示信息
var_dump($rs->getMsg());
#-*- coding:utf-8 -*-
import PhalApiClient
result = PhalApiClient.PhalApiClient('https://api.apiusb.com/api/platform', 'Platform.ChatMessage.GetMessageListx', {'chat_message_to_uuid': '12345678123456781234567812345678', 'last_id':1, 'direction' :'up','perpage':20}, 3)
//FullscreenActivity.java
import net.phalapi.sdk.*; /**
* 网络操作相关的子线程
*/
Runnable networkTask = new Runnable() {
@Override
public void run() {
// TODO
// 在这里进行 http request.网络请求相关操作
PhalApiClient client = PhalApiClient.create()
.withHost("https://api.apiusb.com/api/platform");
PhalApiClientResponse response = client
.withService("Platform.ChatMessage.GetMessageList")
.withParams("chat_message_to_uuid", "12345678123456781234567812345678")
.withParams("last_id", "1")
.withParams("direction", "up")
.withParams("perpage", "20")
.withTimeout(3000)
.request();
String content = "";
content += "ret=" + response.getRet() + "\n";
if (response.getRet() == 200) {
try {
JSONObject data = new JSONObject(response.getData());
content += "data.title=" + data.getString("title") + "\n";
content += "data.content=" + data.getString("content") + "\n";
content += "data.version=" + data.getString("version") + "\n";
} catch (JSONException ex) {
}
}
content += "msg=" + response.getMsg() + "\n";
Log.v("[PhalApiClientResponse]", content);
Message msg = new Message();
Bundle data = new Bundle();
data.putString("value", content);
msg.setData(data);
handler.sendMessage(msg);
}
};
PhalApiClientResponse response = PhalApiClient.create()
.withHost("https://api.apiusb.com/api/platform")
.withService("Platform.ChatMessage.GetMessageList")
.withparamsList("chat_message_to_uuid", "12345678123456781234567812345678")
.withparamsList("last_id", "1")
.withparamsList("direction", "up")
.withparamsList("perpage", "20")
.withTimeout(3000)
.request();
Log.v("response ret", response.ret + "");
Log.v("response data", response.data);
Log.v("response msg", response.msg);
package main
import (
"./PhalApiClient"
"fmt"
"net/url"
)
func main() {
rs, err := PhalApiClient.NewRequest().
WithHost(`https://api.apiusb.com/api/platform`).
WithService("Platform.ChatMessage.GetMessageList").
WithParams(url.Values{}).
Get()
if err != nil {
fmt.Println(err.Error())
} else {
fmt.Println("code------------------------", rs.Code)
fmt.Println("data------------------------", rs.Data)
fmt.Println("msg------------------------", rs.Msg)
}
}
#import "AFNPhalApiClient.h"// 待POST的参数
NSDictionary *params = @{@"demo_key_1": @"your_key", @"demo_key_2": @"1.0"};
// 使用AFNPhalApiClient
[[[[[AFNPhalApiClient sharedClient] withHost:@"https://api.apiusb.com/api/platform"] withService:@"Platform.ChatMessage.GetMessageList"] withParams:params] requestWithFormDataBlock:^(id formData) {
// 如需上传文件(图片等),请参照如下格式
[formData appendPartWithFileData:UIImageJPEGRepresentation([UIImage imageNamed:@"head.JPG"], 1) name:@"file" fileName:@"image.jpg" mimeType:@"image/jpeg"];
} completeBlock:^(id resultObject) {
PALog(@"resultObject: %@", resultObject);
} failureBlock:^(NSError *error) {
PALog(@"error: %@", error);
}];
// 打印url查看
PALog(@"total url: %@", [[AFNPhalApiClient sharedClient] printTotalUrlStr]);
错误列表
错误状态码 | 错误描述信息 |
---|---|
400 | ret=400,客户端参数错误或非法请求 |
404 | 表示接口服务不存在 |
406 | ret=406,access_token令牌校验不通过 |
407 | ret=407,app_key权限不足,或未知应用 |
408 | ret=408,当前用户禁止使用,或用户未登录 |
500 | 表示服务端内部错误 |
本文档生成时间:2024-04-18 09:03:38