From the looks of it I think you feed an empty variable to the TJsonReaderFactory.
Here is how I apporached:
//Create a pointer to hold the json serialized data
TSharedPtr<FJsonObject> JsonObject;
//Create a reader pointer to read the json data
TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(JsonString);
//Deserialize the json data given Reader and the actual object to deserialize
if (FJsonSerializer::Deserialize(Reader, JsonObject))
{
//Get the value of the json object by field name
int32 recievedInt = JsonObject->GetIntegerField("customInt");
//Output it to the engine
GEngine->AddOnScreenDebugMessage(1, 2.0f, FColor::Green, FString::FromInt(recievedInt));
}
JsonString is read from a web server with HTTP request. I suppose you should get your jsonObject and convert it to a .ToString() and feed it to the reader factory. Or I don’t even think you need a reader, as if you have the json object, you can print it already.