아이템 지급
우편함으로 아이템을 전송합니다.
URL 확인
이 API는 service-api.playnanoo.com 도메인을 사용합니다.
API 정보
- URL:
https://service-api.playnanoo.com/inbox/v20220901/send - Method:
PUT - 인증 필요: 예
요청 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| table_code | string | 필수 | 테이블 코드 |
| items | array | 필수 | 전송할 아이템 배열 |
| period | number | 필수 | 유효 기간 (초 단위) |
응답 데이터
Res 클래스
| 필드 | 타입 | 설명 |
|---|---|---|
| status | FString | 처리 상태 |
코드 예제
void UMyGame::SendInboxItem(const FString& TableCode, int32 Period)
{
// items 배열 생성
TArray<TSharedPtr<FJsonValue>> ItemsArray;
TSharedPtr<FJsonObject> Item = MakeShareable(new FJsonObject());
Item->SetStringField(TEXT("item_code"), TEXT("ITEM_001"));
Item->SetNumberField(TEXT("item_count"), 1);
ItemsArray.Add(MakeShareable(new FJsonValueObject(Item)));
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("table_code"), TableCode);
Body->SetArrayField(TEXT("items"), ItemsArray);
Body->SetNumberField(TEXT("period"), Period);
// JSON 문자열 변환
FString JsonBody = FPlayNANOOHelper::ToJsonString(Body);
// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/inbox/v20220901/send"));
Request->SetVerb(TEXT("PUT"));
FPlayNANOOHelper::SetCommonHeaders(Request, true); // 인증 토큰 포함
Request->SetContentAsString(JsonBody);
Request->OnProcessRequestComplete().BindLambda(
[](FHttpRequestPtr Req, FHttpResponsePtr Res, bool bSuccess)
{
if (bSuccess && Res.IsValid())
{
UE_LOG(LogTemp, Log, TEXT("우편함 아이템 전송 성공"));
}
});
Request->ProcessRequest();
}
유효 기간
period는 초 단위로 지정합니다. 예를 들어 24시간은 86400초입니다.