Sometimes, http requests just don’t receive any response from the “HandleOnResponse” delegate I have binded to a http request in c++.
void UHttpRequest::SendRequest(FString URL, TMap<FString, FString> Headers, FString Body, HttpRequestVerb RequestVerb) {
FString StringifiedRequestVerb = *UEnum::GetDisplayValueAsText(RequestVerb).ToString();
FHttpRequestRef Request = FHttpModule::Get().CreateRequest();
Request->SetURL(URL);
Request->SetTimeout(15);
Request->SetVerb(StringifiedRequestVerb);
Request->SetHeader(TEXT("User-Agent"), "X-UnrealEngine-Agent");
Request->SetHeader("Content-Type", TEXT("application/json"));
if (Body.Len() > 0) {
Request->SetContentAsString(Body);
}
if (Headers.Num() > 0) {
for (const TPair<FString, FString>& pair : Headers) {
Request->SetHeader(pair.Key, pair.Value);
}
}
Request->OnProcessRequestComplete().BindUObject(this, &UHttpRequest::HandleOnResponse);
Request->ProcessRequest();
}
Thanks!