公会 信息 修改
公会 信息修改。
URL确认
此API使用 service-api.playnanoo.com 域名。
API信息
- URL:
https://service-api.playnanoo.com/guild/v20230101/edit - Method:
PUT - 需要认证: 是 (Bearer Token)
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| device_id | string | 必填 | 设备 ID |
| table_code | string | 必填 | 表 代码 |
| uid | string | 必填 | 公会 唯一 ID |
| name | string | 必填 | 公会 名称 |
| member_limit | number | 必填 | 成员限制数 (最大: 50) |
| member_point_type | string | 必填 | 成员 积分 类型 ("keep" 或 "delete") |
| auto_join | string | 必填 | 自动 加入 与否 ("Y" 或 "N") |
| extra_data | string | 必填 | 添加 数据 |
响应数据
响应 信息
Status: 处理 结果
代码示例
void UMyGame::EditGuild(const FString& DeviceId, const FString& TableCode, const FString& GuildUid, const FString& GuildName, int32 MemberLimit, const FString& MemberPointType, const FString& AutoJoin, const FString& ExtraData)
{
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("device_id"), DeviceId);
Body->SetStringField(TEXT("table_code"), TableCode);
Body->SetStringField(TEXT("uid"), GuildUid);
Body->SetStringField(TEXT("name"), GuildName);
Body->SetNumberField(TEXT("member_limit"), MemberLimit);
Body->SetStringField(TEXT("member_point_type"), MemberPointType);
Body->SetStringField(TEXT("auto_join"), AutoJoin);
if (!ExtraData.IsEmpty())
{
Body->SetStringField(TEXT("extra_data"), ExtraData);
}
// JSON 문자열 변환
FString JsonBody = FPlayNANOOHelper::ToJsonString(Body);
// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/guild/v20230101/edit"));
Request->SetVerb(TEXT("PUT"));
FPlayNANOOHelper::SetCommonHeaders(Request, true); // 인증 토큰 포함
Request->SetContentAsString(JsonBody);
Request->OnProcessRequestComplete().BindLambda(
[](FHttpRequestPtr Req, FHttpResponsePtr Res, bool bSuccess)
{
if (bSuccess && Res.IsValid())
{
TSharedPtr<FJsonObject> JsonObject;
TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(Res->GetContentAsString());
if (FJsonSerializer::Deserialize(Reader, JsonObject))
{
FString Status = JsonObject->GetStringField(TEXT("Status"));
UE_LOG(LogTemp, Log, TEXT("길드 수정 성공!"));
UE_LOG(LogTemp, Log, TEXT("Status: %s"), *Status);
}
}
});
Request->ProcessRequest();
}
需要认证
此API需要Bearer Token认证。需要先登录获取访问Token。
积分类型选项
member_point_type参数决定公会成员退出时积分的处理方式:
- "keep": 积分保持 - 成员退出后公会的总积分保持
- "delete": 积分扣减 - 成员退出时该成员的积分从公会中扣减
自动加入选项
auto_join参数决定公会加入请求的处理方式:
- "Y": 加入请求时自动批准
- "N": 公会会长或管理员需要手动批准加入请求
需要权限
修改公会信息需要公会会长或运营者权限。