청크별 다운로드
HTTP를 통해 청크당 바이너리 데이터를 연속적으로 다운로드하여 스트림으로 바이너리 데이터를 받을 수 있습니다. 다운로드마다 청크 크기를 지정하고, 다운로드된 각 청크에 대해 OnComplete 콜백을 수신합니다.
- Blueprint
- C++
UFileToMemoryDownloader::DownloadFileToMemoryPerChunk(TEXT("https://www.example.com/some_file.raw"), 15.0f, TEXT(""), 52428800,
FOnDownloadProgressNative::CreateLambda([](int64 BytesReceived, int64 ContentSize, float ProgressRatio)
{
UE_LOG(LogTemp, Log, TEXT("Download progress: %lld/%lld (%f)"), BytesReceived, ContentSize, ProgressRatio);
}), FOnFileToMemoryChunkDownloadCompleteNative::CreateLambda([](const TArray64<uint8>& DownloadedContent, UFileToMemoryDownloader* Downloader)
{
// Handle the downloaded chunk here
UE_LOG(LogTemp, Log, TEXT("Downloaded chunk size: %lld"), DownloadedContent.Num());
}), FOnFileToMemoryAllChunksDownloadCompleteNative::CreateLambda([](EDownloadToMemoryResult Result, UFileToMemoryDownloader* Downloader)
{
UE_LOG(LogTemp, Log, TEXT("Download result: %s"), *UEnum::GetValueAsString(Result));
}));