Speed up downloads
The HTTP module in UE4 is not configured for speed. If you want to achieve faster download rates then add the following settings to YourProjectName\Config\DefaultEngine.ini

[HTTP]
HttpThreadActiveFrameTimeInSeconds=0.00001

[HTTP.Curl]
BufferSize=524288




Since the download progress is an event that is fired 1 time per second instead of only once, it is an event delegate.
This should be implemented only once per blueprint. For example after the "Begin Play" event.
Add the "Get Web Communication Target" function and do a drag and drop with the "Return Value".




Full example




If you want to download larger files on a device with low RAM (Smartphones) you can use the "Low Ram Download" function.
With this function the file is downloaded step by step. The Download aborts every x MB, bytes are written to the disk and the download continues again.
Your server must support the continuation of downloads. Your Server will returns the status code 206 and not 200 if the download was successful.




Examples for older plugin versions.
Also useful if you want to make multiple HTTP requests at once. The event delegates must be created in a central place that is not executed multiple times. For example behind "Begin Play" in a singleplayer game.