跳转到主要内容

查询公会成员

查询公会成员列表的 API。

URL 确认

此 API 使用 service-api.playnanoo.com 域名。

API 信息

  • URL: https://service-api.playnanoo.com/guild/v20230101/member/search
  • Method: PUT
  • 需要认证: 是

请求参数

参数类型必填说明
table_codestring必填表代码
uidstring必填公会唯一 ID
DeviceInfo 继承

此 API 的 Req 类继承自 DeviceInfo。DeviceInfo 的所有属性将自动包含。

响应数据

Res 类

字段类型说明
ItemsList\<MemberItemModel>成员列表

MemberItemModel 结构

字段类型说明
Uuidstring成员 UUID
Nicknamestring昵称
Gradeint等级
Pointdouble积分
ExtraDatastring附加数据
LastLoginDatestring最后登录日期
InDatestring加入日期

Unity C# 实现

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;

public class GuildMemberSearch
{
static string path = "https://service-api.playnanoo.com/guild/v20230101/member/search";

[Serializable]
public class Req : DeviceInfo
{
public string table_code;
public string uid;

public IEnumerator Send(
string tableCode,
string uid,
Action<Res> onSuccess,
Action<BaseResponse> onError
)
{
if (!string.IsNullOrEmpty(tableCode)) this.table_code = tableCode;
if (!string.IsNullOrEmpty(uid)) this.uid = uid;

yield return HttpClient.Send<Req, Res>(
UnityWebRequest.kHttpVerbPUT,
path,
requireToken: true,
body: this,
onSuccess: onSuccess,
onError: onError
);
}
}

[Serializable]
public class Res : BaseResponse
{
public List<MemberItemModel> Items;
}

[Serializable]
public class MemberItemModel
{
public string Uuid;

public string Nickname;

public int Grade;

public double Point;

public string ExtraData;

public string LastLoginDate;

public string InDate;
}
}

使用示例

public void SearchMembers()
{
GuildMemberSearch.Req req = new GuildMemberSearch.Req();

StartCoroutine(req.Send(
tableCode: "guild_table",
uid: "guild_uid",
onSuccess: res =>
{
foreach (var item in res.Items)
{
Debug.Log($"Uuid: {item.Uuid}, Nickname: {item.Nickname}, Grade: {item.Grade}");
}
},
onError: (error) =>
{
Debug.LogError($"멤버 조회 실패: [{error.ErrorCode}] {error.Message}");
}
));
}