[Plugin] Http/s REST, blueprintable JSON and Parse REST API manager at once (VaRest)

I have a huge problem with tokens and the request header.
After a successful login my server returns a valid token for future authorization.
For authorization I set a header “Authorization” and give it the token as value.

When I copy the token and pass it as a “Make Literal” String everything works finde, but when I store the token in a String variable and pass it as the header value the token is invalid.
On the server the token seems to be OK but cannot be decoded correctly.

Any ideas?

Hello, after update the plugin to 1.1-r19 version, all unicode text shows like this: \u041d\u043e\u0432\u043e\u0431\u0440\u0430\u043d\u0435\u0446 whits latin symbols no problems. How to resolve this? Many thx.
UPD: resolved. Fixed in source code.

I’m trying to use VaRest to fetch a JSON object from a webAPI. I see the JSON data show up in the console log, but I can’t figure out how to get the data into something I can use in blueprints. The simple GET example on the github site doesn’t seem to call the event handler. Is there a clear simple example, of doing a GET request and getting the resulting JSON data into something useful?

HI,
Trying to work out how to use VaRest to create a POST request that needs to send username and password, to retrieve a JSON encoded list of data for a user from the server. Generally (using code) I would construct the post request like this:
Request->SetHeader(TEXT(“username”), “usernameString”);
Request->SetHeader(TEXT(“password”), “passwordString”);
BUT cannot work out how, using Blueprints, to construct the request. Can anyone help? The VaRest documentation - i.e. the github wiki - isn’t exactly helpful. Help much appreciated.

Hi , Work for you do “Construct Json Request”?
Here an example.

Same problem here, any help would be much appreciated as I’m going bald pulling my hair out

Is this Plug in still active ?

I’m having trouble packaging a project to Linux, where the output log blames the VaREST plugin for not having a Linux binary. Indeed, VaRestPlugin\Binaries has Android, HTML5, IOS, Mac, TVOS, Win32, and Win64, but no Linux.

I’m running on binary UE4.18.3 on Windows 10

EDIT: I went ahead and used the source built version of Unreal to package to Linux. However, it would be much better if we could package to Linux from the binary version of Unreal =).

Hi, please is there a way of knowing when the Apply URL node failed? Because when it fails it does not go to the next node and the OnRequestFail and OnRequestComplete binds do not work with Apply URL. I just get the error messages in LOG when it fails. So is there a way of knowing that the Apply URL node failed?

Apparently, it will be somewhere in this thread, but where can I find C++ documentation, please?

I am having difficulty with multiple POSTs to the same server. At Event BeginPlay the POST request is set up with the JSON buffer and POST request structure and attached to callbacks for request complete or failure. During runtime, calls are made to issue this post with a single field (“action”) in the buffer. The first post goes through just fine (get response code 200 from server), but the second one seems to get through the VArest code (see “LogVaRest: Request (url body): POST …” in output log), but the server doesn’t see the message. Even running wireshark on the UE machine shows the POST not going out. Exactly three minutes after the second POST call I get a libcurl error on the output log, i.e., “LogHttp: Warning: 00000260BF1A9300: request failed, libcurl error: 0 (No error)”. Am I modifying the JSON buffer correctly? Can the JSON buffer be reused like I do here? Hope this is the right place to post this kind of question.

Just posting to thank the OP for VaRest. Spent the day setting it up and coding a php/mysql login system. Worked perfectly. Thank you.

I have been trying to GET / POST data using only blueprints, but it is not working… I tryied “GET RESPONSE OBJECT” then “DECODE JSON”, but the decode only returns a boolean. Shouldn’t it return a string? How do I access the data from the website?

I went through the documentation, but it is outdated since the “GET RESPONSE CONTENT” is deprecated.

Thank you

when I wanted to use “GetResponseContent” It gives me This notification:

DEPRECATED: please use GetResponseContentAsString() instead

and when I use that it just shows this:
{}

so please help me I reeeaaaaallyyy need to use your plugin in Unreal Engine 4

Just show me to the direction to learn

Respects

**Request fails in packaged build for android **

Hi,
I packaged the android apk and installed on Moto G5 S Plus. When i request the url on button. It always fails.

I also disabled the Verify Peer. But it didn’t work.

https://forums.unrealengine.com/filedata/fetch?type=thumb

Plugin Version:
“Version” : 22,
“VersionName” : “1.1-r22”,

Engine Version: 4.19.1 Release

Log File :

This is working perfectly so far, except, I don’t get any difference between the ‘Encode JSON’ node and the ‘Encode JSON to Single String’ node. Both are creating single-line JSON nodes, and as I am exporting these to external .json files this is a bit messy.

Anyone else experiencing this on 4.20?

I am having some trouble doing this in C++
any help to do the BindEvent To OnRequestComplete Function To another Function call “TempFunction”

this is what I have so far::

FLatentActionInfo latentInfo;
Request = UVaRestRequestJSON::ConstructRequestExt(this, ERequestVerb::GET, ERequestContentType::x_www_form_urlencoded_url);
Request->ApplyURL(UrlGetIp, RequestObject, this, latentInfo);
Request->OnRequestComplete;

been trying for over 4 hours to figure out.

Hey @
I just wanted to ask if it is possible to use the Bing Speech API with your Plugin.
It works like this: First you send a Authentication Key and audio file to the server and then you get a response in form of a JSON.
Does this work with your plugin?

I’m currently trying to use VaRest to login to a server via a third party api.

I should be able to login by either processing a cURL or by passing headers and a body via a url.
I’ve not be able to get VaRest to post correctly to the server.

If I copy the cURL link from the api dashboard and into the Process URL node then the request fails and i get the same if i follow the logic in the attached screenshot. When i’m using the Set String Request Content, i’m only doing so because I couldn’t find anything else relating to adding body content.

I have experience working with PHP before inside of Unity but this is my first time using posting JSON so i’m sure there is something really simple that i’m missing.

EDIT:
So it seems to be working now using the Set String Field and Set Fields. How ever nesting a JSON field inside a field adds in square brackets and not curly brackets along with another formatting issue. Can anyone suggest how to get around this. I’ll attach a screen shot.

Will this get updated to 4.21?