Query Player
Queries a specific player's leaderboard record.
URL Confirmation
This API uses the service-api.playnanoo.com domain.
API Information
- URL:
https://service-api.playnanoo.com/leaderboard/v20240301/show - Method:
PUT - Authentication Required: Yes
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| uid | string | Required | Table code |
| record_id | string | Required | Record ID (player identifier) |
Response Data
| Field | Type | Description |
|---|---|---|
| Rank | int | Player's rank |
| RotationCount | int | Current season number |
| RecordId | string | Record ID |
| Score | int | Score |
| ExtraData | string | Extra data (JSON string) |
Code Example
void UMyGame::ShowPlayerRecord(const FString& TableCode, const FString& RecordId)
{
// 요청 데이터 생성
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("uid"), TableCode);
Body->SetStringField(TEXT("record_id"), RecordId);
// JSON 문자열 변환
FString JsonBody = FPlayNANOOHelper::ToJsonString(Body);
// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/leaderboard/v20240301/show"));
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 Rank = JsonObject->GetIntegerField(TEXT("Rank"));
int32 Score = JsonObject->GetIntegerField(TEXT("Score"));
int32 RotationCount = JsonObject->GetIntegerField(TEXT("RotationCount"));
FString ExtraData = JsonObject->GetStringField(TEXT("ExtraData"));
UE_LOG(LogTemp, Log, TEXT("순위: %d, 점수: %d, 시즌: %d"), Rank, Score, RotationCount);
}
}
});
Request->ProcessRequest();
}
Record Query
This API queries a specific player's record from the current season. To query records from previous seasons, use the previous season query API.
Extra Data Parsing
ExtraData is returned in JSON string format. You can use FJsonSerializer to convert it to an object.