You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#jira UETOOL-4465 #preflight 622febfb6065b4ecd3dd2858 #rb simon.therriault [CL 19381806 by George Rolfe in ue5-main branch]
43 lines
1.3 KiB
C++
43 lines
1.3 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "HttpRequestProxyObject.h"
|
|
|
|
#include "HttpBlueprintFunctionLibrary.h"
|
|
#include "HttpModule.h"
|
|
#include "Interfaces/IHttpResponse.h"
|
|
|
|
UHttpRequestProxyObject* UHttpRequestProxyObject::CreateHttpRequestProxyObject(
|
|
const FString& InUrl,
|
|
const FString& InVerb,
|
|
FHttpHeader InHeader,
|
|
const FString& InBody)
|
|
{
|
|
UHttpRequestProxyObject* const Proxy = NewObject<UHttpRequestProxyObject>();
|
|
Proxy->SetFlags(RF_StrongRefOnFrame);
|
|
Proxy->CachedHeader = InHeader;
|
|
Proxy->ProcessRequest(InUrl, InVerb, MoveTemp(InHeader), InBody);
|
|
return Proxy;
|
|
}
|
|
|
|
void UHttpRequestProxyObject::ProcessRequest(
|
|
const FString& InUrl,
|
|
const FString& InVerb,
|
|
FHttpHeader&& InHeader,
|
|
const FString& InBody)
|
|
{
|
|
FHttpModule& HttpModule = FHttpModule::Get();
|
|
const TSharedRef<IHttpRequest> Request = HttpModule.CreateRequest();
|
|
Request->SetURL(InUrl);
|
|
Request->SetVerb(InVerb);
|
|
Request->SetContentAsString(InBody);
|
|
InHeader.AssignHeadersToRequest(Request);
|
|
Request->ProcessRequest();
|
|
|
|
Request->OnProcessRequestComplete().BindUObject(this, &ThisClass::ProcessComplete);
|
|
}
|
|
|
|
void UHttpRequestProxyObject::ProcessComplete(FHttpRequestPtr InRequest, FHttpResponsePtr InResponse, bool bInSuccessful)
|
|
{
|
|
OnRequestComplete.Broadcast(InResponse->GetContentAsString(), bInSuccessful, MoveTemp(CachedHeader));
|
|
}
|