Welcome to the VaRest wiki!
- Lastest release: 1.1-r21 (1 February 2018)
- Unreal Marketplace: https://www.unrealengine.com/marketplace/varest-plugin
- Supported engine versions: UE 4.18-4.19
Check the Plugin Installation article to get detailed description how to install the plugin (it's a common plugin setup steps).
Plugin was tested and proved to work on following platforms:
- Mac (OSX)
How To Use
To get the key ideas and usage examples check the Plugin Usage article.
Currently plugin supports almost all Engine built-in Json features. If you found that you can't handle some Json - write me, and I'll take a look what can I do to improve the plugin.
Attn.! In case of arrays "value return" is used to return the function result.
Self-signed certificates and http on Android
There are few ways to enable connection to servers with untrusted certificates (that is blocked by default):
- Apply in your project code: FCurlHttpManager::CurlRequestOptions.bVerifyPeer = false;
- In the Project Settings dialog, look in the Engine - Network section for Libcurl Verify Peer checkbox. Try turning it off and see if it works.
Non-trusted connections (http) on iOS
Thanks to Joe Conley with this how-to.
It's not the easiest to use interface, but in the Project Settings' iOS section, there is a section for "Additonal Plist Data", and one of the things you can add there are "NSExceptionDomains" which allow you to specify which sites you want to allow insecure (non-Https) connections to on iOS. You have to add it in the XML plist format, and the editing experience is not great, but it's possible.
I think probably that field should at least have a multi-line text entry box to make it a less difficult experience, but at least it should be possible. In total, it should look like this:
<key>NSAppTransportSecurity</key> <dict> <key>NSExceptionDomains</key> <dict> <key>test.com</key> <dict> <key>NSExceptionAllowsInsecureHTTPLoads</key> <true/> <key>NSIncludesSubdomains</key> <true/> </dict> </dict> </dict>\n
Another way is described by @saccomat at issue #63:
I had to put this string in the "additional plist data" inside projects settings / ios/ to let it work NSAppTransportSecurityNSAllowsArbitraryLoads\n