跳转到主要内容

贡献积分查询

记录公会成员的贡献积分。

URL确认

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

API信息

  • URL: https://service-api.playnanoo.com/guild/v20230101/personal/point
  • Method: PUT
  • 需要认证: 是 (Bearer Token)

请求参数

参数类型必填说明
device_idstring必填设备 ID
table_codestring必填表 代码
pointnumber必填要添加的积分 (正数/负数均可)
extra_datastring必填添加 数据 (JSON 字符串 可用)

响应数据

积分 信息

  • TotalPoint: 更新后的总积分
  • Point: 本次添加的积分
  • ErrorCode: 错误代码 (成功时为空字符串)
  • Message: 响应 消息

代码示例

void UMyGame::AddGuildPoint(const FString& DeviceId, const FString& TableCode, int32 Point, const FString& ExtraData)
{
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("device_id"), DeviceId);
Body->SetStringField(TEXT("table_code"), TableCode);
Body->SetNumberField(TEXT("point"), Point);
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/personal/point"));
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))
{
int32 TotalPoint = JsonObject->GetIntegerField(TEXT("TotalPoint"));
int32 AddedPoint = JsonObject->GetIntegerField(TEXT("Point"));

UE_LOG(LogTemp, Log, TEXT("포인트 추가 성공!"));
UE_LOG(LogTemp, Log, TEXT("Added Point: %d"), AddedPoint);
UE_LOG(LogTemp, Log, TEXT("Total Point: %d"), TotalPoint);
}
}
});

Request->ProcessRequest();
}
需要认证

此API需要Bearer Token认证。需要先登录获取访问Token。

积分 值
  • 正数: 积分增加 (例如: 100, 50)
  • 负数: 积分扣减 (例如: -50, -100)
  • 0: 仅查询当前积分 (无变更)
积分 范围

积分值可能有限制。请注意避免过大的值或负数扣减导致总积分变为负数。

extra_data 使用

可以通过extra_data参数记录积分获取/扣减的详细信息:

  • 活动类型 (任务、团本、捐赠等)
  • 参考ID (任务ID、事件ID等)
  • 附加元数据

以JSON字符串形式传递时,后续日志分析更加方便。