How to Make HTTP Requests in Unreal Engine

  Рет қаралды 28,499

Flopperam

Flopperam

Күн бұрын

Пікірлер: 82
@Nerumbra
@Nerumbra 2 жыл бұрын
Most beautiful videos about ue4-5, most underrated youtuber...WHY WORLD, JUST WHYYY
@superduperman909
@superduperman909 2 жыл бұрын
Great video. Great pacing. In depth, but to the point. Keep up the good work, we appreciate it!
@zeffster2
@zeffster2 2 жыл бұрын
Straight to the point, not wasting my time with KZbin fluff and puff. Love from Norway.
@derekadair5320
@derekadair5320 Жыл бұрын
Clear, concise, exactly what i needed! Thank you for this.
@zdtuttauniversity2715
@zdtuttauniversity2715 2 жыл бұрын
this is crazy- I don't fully understand but I will watch again a few more times, it seems like the implications of this are pretty powerful Thank You!
@AdrenResi
@AdrenResi 2 жыл бұрын
good video! this is basically how games get scoreboard data etc
@markoleptic4501
@markoleptic4501 2 жыл бұрын
I was able to upload scores to my website (and database) thanks to your video! Thank you. Do you know if its possible to interact with the built-in browser's cookies? I have a website that currently has persistent login for users, and I want players to not have to log in every time when inside the built-in browser. However, the browser seems to clear all cookies and storage when it closes.
@Flopperam
@Flopperam 2 жыл бұрын
Is the game on a web browser? Trying to understand the infrastructure of your set up since the video is about web sockets so I'm a little confused.
@markoleptic4501
@markoleptic4501 2 жыл бұрын
@@Flopperam The game is not in a web browser, but rather the web browser is in the game. When I said built-in browser, I meant the web browser widget that you can use inside the engine. Also, I don't think this is your video about web sockets. Basically, I'm just wanting to be able to display a page on the internet (that requires authentication using using http headers) inside my game.
@Flopperam
@Flopperam 2 жыл бұрын
Hey sorry for the late response but if you're using the web browser widget, you can execute client side JavaScript thought the SWebBrowser ExecuteJavascript method. You can also get the IWebBrowserCookieManager through the IWebBrowserSingleton through the IWebBrowserModule and through the cookie manager you can delete and set cookies. You could explore docs.unrealengine.com/5.0/en-US/API/Runtime/WebBrowser and see what else they have regarding cookies.
@markoleptic4501
@markoleptic4501 2 жыл бұрын
@@Flopperam Thanks for the response. I tried going through the Web Browser API but I couldn't wrap my head around how the different classes worked together in C++. I ended up getting it working using the ExecuteJavascript method in the web browser widget. However I had to omit the "httpOnly" and "Secure" properties. I'm not sure if there's a way to get around that though.
@pillar9350
@pillar9350 2 жыл бұрын
Hey, great video, I just want to ask, is there a way to send a DELETE request without using plugins?
@Flopperam
@Flopperam 2 жыл бұрын
Hmmm, have you tried specifying "DELETE" as the verb in the HTTP request instead of "GET" and "POST" like I did in the video?
@pillar9350
@pillar9350 2 жыл бұрын
@@Flopperam It works! thank you very much!
@BradenLehman
@BradenLehman 2 жыл бұрын
Great tutorial! Exactly what I needed
@vadim2639
@vadim2639 Жыл бұрын
Hi, i was using that example to download image, but it crashes editor when I trying just even to UE_LOG(LogTemp, Display, TEXT("Response %s"), bWasSuccessful);
@Flopperam
@Flopperam Жыл бұрын
What was the error message/response that you received.
@pedrosanchezroca181
@pedrosanchezroca181 Жыл бұрын
seems like when you add "UFUNCTION" together with a function signature including "FHttpRequestPtr" or "FHttpResponsePtr" in the header it will complain with error: "Unrecognized type 'FHttpRequestPtr' - type must be a UCLASS, USTRUCT or UENUM" any idea on how to solve this?
@Flopperam
@Flopperam Жыл бұрын
Sorry for the late response. It's been a while but I believe I encountered this before. I think this happens because FHttpRequestPtr isn't exposed to blueprints. I think you could expose it yourself but I'm not sure.
@220damien
@220damien 2 жыл бұрын
Thanks for this tutorial. I am having an error when writing the code for the POST request, it is in the Serialize function. I am getting a " no overload function matches..." I am using UE4.27, and i am writing the same code you suggest in your tutorial.
@Flopperam
@Flopperam 2 жыл бұрын
Hey, at what timestamp is this error occurring?
@220damien
@220damien 2 жыл бұрын
@@Flopperam 9:13
@Flopperam
@Flopperam 2 жыл бұрын
@@220damien In your project's build.cs file, did you add "Json" to the list of public dependency module names.
@220damien
@220damien 2 жыл бұрын
@@Flopperam Yes i did include the modules "HTTP" , "Json" and still i got the same error. Here is the error i am getting when compiling in UE4: drive.google.com/file/d/1bm_NIZ7BxDaR_ot6iOuFgV-T_ZwxU-PK/view?usp=sharing I am sure i posted this comment yesterday... did it got removed?
@rickfuzzy
@rickfuzzy Жыл бұрын
I tried to make a blueprint function library for this, but i'm having an issue binding the delegate as I cannot bind object from a static method. Is there a simple workaround for that? Thank you
@Flopperam
@Flopperam Жыл бұрын
Hmmm, does it have to be a static method?
@arjunc5896
@arjunc5896 2 жыл бұрын
Hi Mahn, I have a situation where I will be awaiting response from a lambda function through AWS API Gateway. Could you give me an idea on how to implement a condition where if the api call is being timed out, it will call again until the UE client HTTP request have a response from the lambda function. In simple terms, How can you recall the same API request if the last call got timed out without any response.
@Flopperam
@Flopperam 2 жыл бұрын
You could set up a timer that loops every x seconds and makes a http request if you never got a response from the last one. However you should get a response even in the case of time out. You could lower the time out in API gateway or lambda since sometimes if the timeout is too long you may not get a response back.
@marcooasan1668
@marcooasan1668 9 ай бұрын
can you make tutorial for RCON? thanks
@Flopperam
@Flopperam 9 ай бұрын
Not too familiar with that but will add to the list
@ErrRationale
@ErrRationale Жыл бұрын
how to edit build.cs if you started project in blueprints
@Flopperam
@Flopperam Жыл бұрын
Sorry for the late response but you would have to manually create a build.cs file in the case of blueprint projects.
@ErrRationale
@ErrRationale Жыл бұрын
@@Flopperam Thank
@Rocklee-vv
@Rocklee-vv 2 жыл бұрын
I used the same code used in a video And used discord webhook url but it didnot work Any idea how to solve? My goal is to take snapshot of game in unreal engine in runtime and send it to discord server when some button is pressed
@Flopperam
@Flopperam 2 жыл бұрын
Hey, is their documentation for the discord webhook you're using?
@adityadharmarajan8164
@adityadharmarajan8164 2 жыл бұрын
Really nice video only 1 thing is that would it be possible to have a request body for a get request rather than a post request because when I tried that its not working
@Flopperam
@Flopperam 2 жыл бұрын
Hmmm, I haven't tried that before but if it that's not working then I'm not sure, may be an unreal issue. I can look at the source code later
@adityadharmarajan8164
@adityadharmarajan8164 2 жыл бұрын
@@Flopperam Yeah would be really awesome i couldn't figure it out
@Flopperam
@Flopperam 2 жыл бұрын
Hey sorry for the late response. I took a peek at the source code for HTTP and I don't see anything that would prevent a GET request from having a body. May I ask how you're implementing your http request?
@adityadharmarajan8164
@adityadharmarajan8164 2 жыл бұрын
@@Flopperam hey sorry for the late response and I'm implementing the body the same way it would be implemented in a post request but I think due to GET requests conventionally not having bodies unreal doesn't take the body into consideration and just treats it as a message rather than a payload to obtain data
@rickfuzzy
@rickfuzzy 2 жыл бұрын
Firstly, thanks so much for this, it's awesome. What I need to do is loop through a JSON list in blueprints. I'm just not sure how to expose a value back to the blueprint, since the function that returns the data isn't the called function. I'm very new to blueprint functions, so if you could maybe just point me in a direction. Thanks again.
@Flopperam
@Flopperam 2 жыл бұрын
I don't think the json module is directly exposed to blueprints, so you'll probably have to write a c++ function that takes in a json list parameter and does what you want, then make the function callable in blueprints.
@rickfuzzy
@rickfuzzy 2 жыл бұрын
@@Flopperam Ok, thanks. So let's say I use c++ and create a list of Actors that i want to return. How would I send that list back. I'm looking into dynamic delegates at the moment. Is that the right approach?
@Flopperam
@Flopperam 2 жыл бұрын
Delegates can work yes
@artoriasdenostradamus3628
@artoriasdenostradamus3628 2 жыл бұрын
Could you do a Firebase or Playfab for Unreal Engine using C++ tutorial?
@Flopperam
@Flopperam 2 жыл бұрын
Yes, eventually we will. I know it's taking a while and I apologize for that but we're just focused on getting our video production out at the moment. However, we do want to get back to making videos on the more complicated topics soon, and of course in C++!
@Ares9323
@Ares9323 2 жыл бұрын
Thank you for the video! Really helpful! Are you sure that the POST request is working? I tried using existing titles in the json but it's always returning "id 101"
@Flopperam
@Flopperam 2 жыл бұрын
Are you using the url used in the video? If so, I think that's fine since the dummy api always returns the same thing since it doesn't reference a database I believe.
@Ares9323
@Ares9323 2 жыл бұрын
​@@Flopperam I started using the url in the video (I tried it on postman too, it's faster than compiling every time) and I thought it wasn't working, then I read the guide of your website and it says that it should return 101 because it's not really working 😅 Fortunately I was able to use it for my needs, thank you so much again! Do you know if is there a way to pass a parameter (like a string) to the bound event to recognize it from the others? If I make requests for several files, how can you know which is which?
@Flopperam
@Flopperam 2 жыл бұрын
@@Ares9323 Which bound event? The bound events on the server? or the ones on the Unreal client side? Because the Unreal WebSocket->Send message allows the Unreal client to send data that can be captured by the websocet's on('message') event handler in this case. And ofc the websocket server can send data back to the client.
@Ares9323
@Ares9323 2 жыл бұрын
@@Flopperam I ended up using BindWeakLambda instead of BindUObject, I needed to pass an additional variable (in addition to Request, Response and bWasSuccessful), it would have been very hard to find a decent solution without your video!
@xalalakos
@xalalakos 6 ай бұрын
Is the content deprecated?
@Flopperam
@Flopperam 6 ай бұрын
I believe this tutorial still works
@xalalakos
@xalalakos 6 ай бұрын
@@Flopperam It works, thanks! I would like to see if you have any other video that you can make it into blueprint after scripting it. Is there any? Or do you have any reference videos? Thanks
@Flopperam
@Flopperam 6 ай бұрын
Hey, I would suggest doing research on the UFUNCTION tag in unreal so that you can turn a c++ function into a blueprint function, hence being able to call your http request code from anywhere in blueprints.
@xalalakos
@xalalakos 6 ай бұрын
You rock, thank you very much!!
@Jayanta20091989
@Jayanta20091989 2 жыл бұрын
Will this work on ue4.26?
@Flopperam
@Flopperam 2 жыл бұрын
Yes
@dzonemanarmy
@dzonemanarmy 2 жыл бұрын
i love you man !
@artoriasdenostradamus3628
@artoriasdenostradamus3628 2 жыл бұрын
When you return for more tutorials ??
@Flopperam
@Flopperam 2 жыл бұрын
Soon, just started a new job and am still recovering from my injury but I still want to make tutorials.
@tenebros7748
@tenebros7748 2 жыл бұрын
how to send file to api ?
@Flopperam
@Flopperam 2 жыл бұрын
Idk if unreal has that capability, but I also don't know the format of the file you're asking about.
@tenebros7748
@tenebros7748 2 жыл бұрын
@@Flopperam what ever the file , I have a pluggin that permit me to choose a file and i take its path then i cant find a way to send it to my CMS T.T
@Flopperam
@Flopperam 2 жыл бұрын
Actually I was wrong, it seems unreal does have this functionality, docs.unrealengine.com/4.27/en-US/API/Runtime/HTTP/Interfaces/IHttpRequest/. The IHttpRequest interface has a SetContentAsStreamedFile method that takes in a FString parameter representing the file name. docs.unrealengine.com/4.27/en-US/API/Runtime/HTTP/Interfaces/IHttpRequest/SetContentAsStreamedFile/
@tenebros7748
@tenebros7748 2 жыл бұрын
@@Flopperam its also in c++ ? Or is that blueprint ? ( Om working with VR on UE5)
@Flopperam
@Flopperam 2 жыл бұрын
C++
@mongo9144
@mongo9144 Ай бұрын
i love you!!!!
@swrcPATCH
@swrcPATCH 2 жыл бұрын
CTRLL-ALT-F11 doesnt do shiet (UE4.26.2)
@Flopperam
@Flopperam 2 жыл бұрын
Hey, I would suggest, in the editor, going to Edit > Editor Preferences > General > Keyboard Shortcuts and checking to see which keyboard shortcut combo handles toggling on/off full screen on the viewport.
@Roadified
@Roadified 2 жыл бұрын
it is F11 on Unreal 4.27 and I think 5 as-well.
@Ares9323
@Ares9323 2 жыл бұрын
Try CTRL+SHIFT+ALT+P
@AphixDev
@AphixDev 2 жыл бұрын
Awesome
@goohbr
@goohbr 2 жыл бұрын
thanks!
@avramcs
@avramcs Жыл бұрын
i wish this was done as a standalone class and not something built into the gamemode, I just want to figure out how to maek and use a c++ class
@Flopperam
@Flopperam Жыл бұрын
Sorry for the late response but I believe this can be done as a standalone class, doesn't have to be in the gamemode
@avramcs
@avramcs Жыл бұрын
I just came back to this video after a little break from UE and I am not really sure what I was asking in my parent question. I think what I meant more was getting an HTTP Request to happen in an already made gamemode such as Third or First person. I think the reason for this was because you create a "StartPlay()" function call so that you create a request when your game starts, since other game modes use blueprints its kind of hard to understand how to get this to happen since there is no "startplay()" function. @@Flopperam
@무방-d6q
@무방-d6q 2 жыл бұрын
This is may causing some vulnerability.
@akshaypatel1362
@akshaypatel1362 Жыл бұрын
🤌🤌🤌👌👌👌
How to Use WebSockets in Unreal Engine
21:26
Flopperam
Рет қаралды 28 М.
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН
Quando eu quero Sushi (sem desperdiçar) 🍣
00:26
Los Wagners
Рет қаралды 15 МЛН
My scorpion was taken away from me 😢
00:55
TyphoonFast 5
Рет қаралды 2,7 МЛН
When you have a very capricious child 😂😘👍
00:16
Like Asiya
Рет қаралды 18 МЛН
Unreal Engine - API Calls VaRest
11:58
dariomac
Рет қаралды 18 М.
How I Broke Both Of My Arms
6:43
Flopperam
Рет қаралды 6 М.
Basic GET tutorial for VaREST plugin and Unreal Engine 4
7:28
BoB LeSuer
Рет қаралды 25 М.
10 Unreal Engine 5 PLUGINS I can't live without!
9:37
Cinecom.net
Рет қаралды 605 М.
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН