x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

.JSON FILE POST VIA HTTP IN UE4

I am trying to call google api in my code. I have a "new.json" file which I am calling and I am trying to POST it but I am not getting the result I want.

Json File = { "config": { "encoding": "LINEAR16", "languageCode": "en-US", "sampleRateHertz": 16000 }, "audio": { "content": "I have this content ignore this line" }, }

My Code

void ASaurabh::HttpCall() {

 TSharedRef<IHttpRequest> Request = Http->CreateRequest();
 Request->OnProcessRequestComplete().BindUObject(this, &ASaurabh::OnResponseeReceived);
 //This is the url on which to process the request
 Request->SetURL("https://speech.googleapis.com/v1/speech:recognize?key=");
 Request->SetVerb("POST");
 Request->SetHeader(TEXT("User-Agent"), "X-UnrealEngine-Agent");
 Request->SetHeader("Content-Type", TEXT("application/json"));
 Request->ProcessRequest();






}

// Called when the game starts or when spawned void ASaurabh::BeginPlay() { Super::BeginPlay(); HttpCall();

}

void ASaurabh::OnResponseeReceived(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful) {

 FString aFullPath = FPaths::GameSavedDir();
 aFullPath += "new.json";
 FString JsonStr;
 FFileHelper::LoadFileToString(JsonStr, *aFullPath);

 //if (GEngine) {
 //GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Yellow, JsonStr);
 TSharedRef<TJsonReader<TCHAR>> JsonReader = TJsonReaderFactory<TCHAR>::Create(JsonStr);
 TSharedPtr<FJsonObject> JsonObject = MakeShareable(new FJsonObject());
 if (FJsonSerializer::Deserialize(JsonReader, JsonObject)) {

     FString recievedString = JsonObject->GetStringField("audio");

     GEngine->AddOnScreenDebugMessage(1, 2.0f, FColor::Green, recievedString);

 }

}

// Called every frame void ASaurabh::Tick(float DeltaTime) { Super::Tick(DeltaTime);

}

Product Version: UE 4.15
Tags:
more ▼

asked Mar 13 '18 at 10:44 AM in C++ Programming

avatar image

Saurabh0190
1 1 3 3

avatar image Saurabh0190 Mar 13 '18 at 10:47 AM

I have the api key , I have not written in the code (please ignore) . Also I thing "TSharedRef> JsonReader = TJsonReaderFactory::Create(JsonStr);" this line is the error but still no idea what the error is

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

0 answers: sort voted first
Be the first one to answer this question
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question