How To Use HTTP CLIENT IN ASP NET CORE Applications | Getting Started With ASP.NET Core Series

Поделиться
HTML-код
  • Опубликовано: 29 сен 2024
  • Hi Friends, The original and well-known HttpClient class can be easily used, but in some cases, it isn't being properly used by many developers. There are different issues that you can run into when instantiating and using the HttpClient class directly in your application code. You can run into multiple open connections, socket exhaustion, failure
    to handle underlying DNS changes, etc. To address all these issues, .NET Core has the IHttpClientFactory interface that can be used to
    configure and create HttpClient instances.
    In this video, I will walk you through the common mistakes that we run into when creating and managing HttpClient instances ourselves.
    I will show how you netstat to inspect the underlying socket connections that are opened when we create HttpClient instances and how the code we write affects it. I will then show you how to fix those using the IHttpClientFactory and the different consumption patterns
    available - Basic, Named, and Typed client instances.
    🔗Are You Using HttpClient in The Right Way? - www.rahulpnath...
    🔗HTTP Requests using IHttpClientFactory - docs.microsoft...
    🔗Issues with HttpClient - docs.microsoft...
    🔗Netstat - docs.microsoft...
    🔗Source Code - rahulpnath.vis...
    Additional Watching
    📹Configuration in ASP NET Core - • CONFIGURATION in ASP.N...
    📹Dependency Injection in ASP NET Core - • DEPENDENCY INJECTION i...
    📹ASP NET Core Series - • ASP.NET Core
    Come say hi! ✋
    🌍 Blog - rahulpnath.com/
    ✉ Subscribe to my Newsletter - www.rahulpnath...
    🐦Twitter - / rahulpnath
    📸Instagram - / rahulpnath
    🎥 Recording Setup and Workflow - www.rahulpnath...
    Make sure to SUBSCRIBE to the channel. THANK YOU for helping me grow this channel !!
  • ХоббиХобби

Комментарии • 304

  • @MrTonyradford
    @MrTonyradford 3 года назад +1

    This was helpful. Thanks.

    • @RahulNath
      @RahulNath  3 года назад +1

      Glad it was helpful Tony! More videos like this here in the ASP Series bit.ly/asp-net-core-series

    • @MrTonyradford
      @MrTonyradford 3 года назад

      @@RahulNath Now that I can consume an api end point, the next step for me is to pass the response to a view, perhaps with some intermediate formatting and maybe using a model so as to bind the view. I think many people would find this useful as it's a real use case and I can't find much info on how to do this. One other dilemma - do you create an API project and add pages or create a Web App and add API functionality to it?

  • @FelipePereira-lx5jw
    @FelipePereira-lx5jw 3 года назад

    Great video Rahul! thank you for share.

    • @RahulNath
      @RahulNath  3 года назад +1

      So nice of you! Do check the full series , I’m sure you’ll like it - ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP
      Do let know in case you get to watch it !

    • @FelipePereira-lx5jw
      @FelipePereira-lx5jw 3 года назад

      ​@@RahulNath i'll watch!

  • @anu608497
    @anu608497 7 месяцев назад

    Thanks for the video Rahul. But it seems more like a school teaching. You can also include real world scenariors in this.

    • @RahulNath
      @RahulNath  7 месяцев назад

      Glad you liked it - The idea is to understand the underlying principles of using HTTPClient well enough so that you can easily transfer that understanding to any real world application/scenario. Is there any particular context that you are looking where I can help adding in more details?

  • @chazontour8588
    @chazontour8588 Год назад

    Great explanation 👌

    • @RahulNath
      @RahulNath  Год назад

      Glad you liked it! DO check out the full ASP Series bit.ly/asp-net-core-series

  • @klearner666
    @klearner666 2 года назад

    I'm a beginner and I really liked your videos you got my sub.
    Keep spreading the knowledge :)

    • @RahulNath
      @RahulNath  2 года назад +1

      Welcome aboard and thank you Rupesh! The full series for ASP NET is here bit.ly/asp-net-core-series
      Do let know if you have any topic suggestions or feedback.

    • @klearner666
      @klearner666 2 года назад

      @@RahulNath do you have any lessons where you can consume soap API and convert to rest and again rest to corresponding soap.?

    • @RahulNath
      @RahulNath  2 года назад

      @@klearner666 No I don't have any - what exactly are you trying to achieve by converting from and to SOAP?

  • @kollus56
    @kollus56 2 года назад +3

    I have recently subscribed to your channel and watching .net core videos . You have done great job teaching the concepts in very simple way and passed the knowledge step by step incrementally. Thanks for the videos .
    Do you have any full course on .net core ?

    • @kollus56
      @kollus56 2 года назад

      Do you have any full .net core course ?

    • @RahulNath
      @RahulNath  2 года назад +1

      Thanks and welcome Seetharam! Glad you are liking it - I don't have a course as such but all my videos are in this playlist bit.ly/asp-net-core-series
      Feel free to drop in any specific topics/suggestions that you have.

    • @kollus56
      @kollus56 2 года назад

      @@RahulNath I am watching them and really great help.

    • @RahulNath
      @RahulNath  2 года назад +1

      @@kollus56 Glad you are liking them! Do let me know if you have any topic suggestions.

  • @nsajan
    @nsajan 4 года назад +1

    Keep going Rahul. You are adding great content!! Question - if there are multiple typed clients talking to different end points, how many socket connections will get open? 1 or many?

    • @RahulNath
      @RahulNath  4 года назад +2

      Glad you are liking the videos! Yes it will create multiple connections since it will to a different endpoint/ip address. Also even for the same ip address it could create multiple connections depending on the timeout on the underlying HttpClientHandler instances. There are a few properties that you can set to control this behaviour too.
      docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclienthandler.maxconnectionsperserver?view=netcore-3.1&WT.mc_id=AZ-MVP-5003875
      Hope that helps.

  • @thethomasproject
    @thethomasproject 3 года назад

    Agree with other comments. Excellent video.

    • @RahulNath
      @RahulNath  3 года назад

      Thank you Frank! Glad you enjoyed it.

  • @PradeepKumar-be4co
    @PradeepKumar-be4co 3 года назад

    Good explanation and very useful. Nice work Rahul.

    • @RahulNath
      @RahulNath  3 года назад

      Glad it helped, thank you!

  • @preetichib2254
    @preetichib2254 2 года назад

    Loved this video
    Thankyou! 😁

    • @RahulNath
      @RahulNath  2 года назад

      You're so welcome Preeti !

  • @jasonld
    @jasonld Год назад +1

    Very helpful video. Thank you! I would love to know how to use an API Key and Secret to do a call.

    • @RahulNath
      @RahulNath  Год назад +1

      You would usually pass it as part of the HTTP Headers or however the API expects the keys to be. Do you have a scenario you are looking at?

  • @Keyakina
    @Keyakina 3 года назад

    thanks great explanation!

    • @RahulNath
      @RahulNath  3 года назад +1

      Glad you enjoyed it!

    • @Keyakina
      @Keyakina 3 года назад +1

      @@RahulNath Do you have to follow up with authentication? Thanks in advance!

    • @RahulNath
      @RahulNath  3 года назад

      @@Keyakina Yes I am working on a series of videos on Authentication. Will be starting soon!

  • @abdul-khaaliqdollie5244
    @abdul-khaaliqdollie5244 3 года назад

    Hi Rahul, great video!! I wanted to ask, is it also possible for posting from your Api to another Api using the IHttpClientFactory?

    • @RahulNath
      @RahulNath  3 года назад +1

      Thank you Abdul and happy you liked it. In the video I am calling the weather API from my API. Is that what you are looking for?

    • @abdul-khaaliqdollie5244
      @abdul-khaaliqdollie5244 3 года назад +1

      @@RahulNath yes you're using the Get method to get the information of the current weather details from the major cities. On my side, I'm busy developing this .net Api that gets what is sent through from a desktop application through a Post endpoint and I want to send that information that I retrieved to another Api. Rather than you demonstrated in the video, is it possible to get the json from the desktop application and use the http post to send it off to the next Api?

    • @RahulNath
      @RahulNath  3 года назад +1

      ​@@abdul-khaaliqdollie5244 Yes it should be very similar to that shown in the video here, whether you use it for Get or Post. HttpClient is for all HTTP interactions. Instead of getting the data from the query parameter in the POST you will be getting from the body (most likely). You can check the Model Binding Video for more details ruclips.net/video/bxksp575pk8/видео.html
      Let know if you have further questions

  • @syedibrahim4327
    @syedibrahim4327 3 года назад

    Rahul, can you please tell me how to integrate with 3rd Party APIS, how to pass headers?

    • @RahulNath
      @RahulNath  3 года назад

      Hey Syed, You can check a sample here stackoverflow.com/questions/29801195/adding-headers-when-using-httpclient-getasync
      Do let know if that helps you.

  • @kj2w
    @kj2w 2 года назад

    Thank you Mr. Nath, this was very helpful. You have a new subscriber! Now by any chance have you explained IEnumerable vs IQueryable in another video somewhere? :D

    • @RahulNath
      @RahulNath  2 года назад

      Thank you. Not yet and thank you for the suggestion.

  • @anandvijayan710
    @anandvijayan710 3 года назад +8

    Simple, clean and clear. Thanks for the sharing your knowledge.

    • @RahulNath
      @RahulNath  3 года назад

      You are welcome Anand! Hope you are liking the full series bit.ly/asp-net-core-series

  • @xxapoloxx
    @xxapoloxx 2 года назад +1

    Dude cut it would with the console, that is now how Microsoft got to be the dominant software provider in the market.

    • @RahulNath
      @RahulNath  2 года назад

      haha yeah! here's how mine is setup www.rahulpnath.com/blog/setting-up-windows-terminal/

  • @herbertpaes2164
    @herbertpaes2164 2 года назад +5

    Your content is very informative, easy to understand and goes directly to the point. Thank you very much for lending us your time to share this knowledge.

    • @RahulNath
      @RahulNath  2 года назад

      So nice of you Herbert and glad you found it useful. Do check out the full series here bit.ly/asp-net-core-series. I'm sure you will love them

  • @jackdaniel4936
    @jackdaniel4936 2 года назад +1

    Hello Rahul. Great explanation. I have a question about HttpClient. When you using typed client, you are giving your interface and concrete in Startup with AddHttpClient() Extension Method and registering it. So i wonder what is the lifetime of my services when i use typed client and register my services with AddHttpClient method? It is adding my service as singleton to my ioc contanier? Or transient? I am asking this because when i only use services.AddHttpClient() (this is calling basic usage) i need to register my services separately. And i am free to choose lifetime in that way. But in typed clients, AddHttpClient method is registering our services for us and i want to learn what is the lifetime of my services when i use a typed client. Because i want to use typed client and set my IWeather service as singleton. But i am not sure what if it adds my service as Transient.
    Thank you, love your videos!

    • @jackdaniel4936
      @jackdaniel4936 2 года назад +1

      Hello again, i am still confused about this situation. For example i did this but i dont know if this logic is true.
      services.AddHttpClient();
      services.AddSingleton();
      class MyService : IMyService
      {
      ctor()
      {
      inject IHttpClientFactory
      inject ILogger (default ILogger lifetime is singleton as i saw in documents)
      inject Another SingletonService..
      }
      public async Task MyMethod()
      {
      var client = httpClientFactory.CreateClient();
      var response = await client.GetAsync();
      //use other registered services...
      }
      }
      As you see, i can make singleton myservice in this way. I dont know my approach is true or not and i dont know i can do this with a typed client because a typed client is registered as transient and i dont want this.

    • @RahulNath
      @RahulNath  2 года назад +1

      Hey Jack, The typed client is registered as transient with DI container. docs.microsoft.com/en-us/dotnet/architecture/microservices/implement-resilient-applications/use-httpclientfactory-to-implement-resilient-http-requests#how-to-use-typed-clients-with-ihttpclientfactory
      Hope that helps.

  • @dailytech3785
    @dailytech3785 3 года назад +6

    Rahul, i love the way you explain things simple clean and easy to remember.

    • @RahulNath
      @RahulNath  3 года назад +1

      Thank you and glad you like it!

  • @PraveenSinghPapular
    @PraveenSinghPapular Год назад +1

    I am trying to call multiple APIs parallelly via Task.waitall with threshold using httpclient but in some scenarios getting Task cancelled error logged also getting can not access disposed object. Can you please brief why this is generated

    • @RahulNath
      @RahulNath  Год назад +1

      Is there a sample code you can share, so I can better understand the issue?

    • @PraveenSinghPapular
      @PraveenSinghPapular Год назад

      @@RahulNath how can I share please share mail-id

    • @RahulNath
      @RahulNath  Год назад

      @@PraveenSinghPapulardetails in about page - hello@rahulpnath.com

  • @kumar_codes
    @kumar_codes 4 года назад +3

    Awesome content....keep making videos like..this and make more ... I get more info and understand than any other tutorials/videos...

    • @RahulNath
      @RahulNath  4 года назад

      Thank you for the comment. It's encouraging 😀

  • @raki1190-y7i
    @raki1190-y7i 10 месяцев назад

    This was a brilliant video, I like the way you take from beginner way of doing things to expert level, this way everyone can see where they are and what mistakes they are doing. I have a question.
    can httpclientfactory handle multiple/concurrent connections? if yes does it uses pool of sockets? in that case it may use multiple sockets based on the load? how this will scale in production use where 100's and 1000's of request can come simultaneously to the controller.

  • @e-cogs
    @e-cogs 3 года назад +2

    Nice video. Quick and invaluable information. Thank you for sharing.

    • @RahulNath
      @RahulNath  3 года назад

      Glad it was helpful! Do check out the other videos in this series ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP

  • @priyankabarde6503
    @priyankabarde6503 3 года назад +1

    Hi Rahul.. Very useful and informative Will you do more vdo on .net core API.. Finally Supb yaar

    • @RahulNath
      @RahulNath  3 года назад

      Thank you Priyanka and happy you like the videos. DId you get a chance to check out my ASP Net Core API Series here ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP
      Do let know if you have any specific topics that you are looking for.

    • @priyankabarde6503
      @priyankabarde6503 3 года назад +1

      @@RahulNath Yes I am going through Series.. Happy You read my comment :)

    • @RahulNath
      @RahulNath  3 года назад

      @@priyankabarde6503 Happy that these videos are helping and do let know if you have any questions or any other topic covered 😀

  • @scabendlin
    @scabendlin 3 года назад +1

    gud 1 rahul...wit such a poker face...lol

  • @bparitosh
    @bparitosh 2 года назад +1

    Awesome tips. Thanks for sharing.
    Q) What is the issue in a singleton instance with DNS change, Could you please elaborate as the requestUri is injected during the GetAsync call. Thanks

    • @RahulNath
      @RahulNath  2 года назад +1

      You will need to write your own way to refresh the singleton instance in case of DNS changes etc or restart the application to have a new instance created. Using the factory handles all this for you. Hope that answers the question?

    • @RahulNath
      @RahulNath  2 года назад +1

      Do check out the full ASP Series here bit.ly/asp-net-core-series

    • @bparitosh
      @bparitosh 2 года назад +1

      @@RahulNath Awesome videos and tips. Thanks for sharing

    • @RahulNath
      @RahulNath  2 года назад

      @@bparitosh Glad it helps!

  • @sruthivasudevan960
    @sruthivasudevan960 3 года назад +4

    Can't thank you more, You are a savior.Thank you for teaching the concepts crystal clear.

    • @RahulNath
      @RahulNath  3 года назад

      Thank you Sruthi. Glad they are helping. Hope you are enjoying the full series and do let me know if you want any specific topics covered.

  • @norbertcsibi7720
    @norbertcsibi7720 3 года назад +1

    Minute 10* What happens on concurrent API calls in our side? Which our API calls that weather forecast API, will they interfere since they r static? Any ideas of what would happen? Great Job Rahul! :)

    • @RahulNath
      @RahulNath  3 года назад +1

      Thank you Nobert. HttpClient is designed to work like that. It's the underlying handler that will handle this. There is also an associated property that sets the max connections available per server docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclienthandler.maxconnectionsperserver?view=net-5.0&WT.mc_id=AZ-MVP-5003875
      Let know if that helps

    • @norbertcsibi7720
      @norbertcsibi7720 3 года назад

      @@RahulNath You`re a star ;)

  • @chaosinorderrr
    @chaosinorderrr 2 года назад

    You mentioned that despite using the singleton approach, the connection still stays open as ESTABLISHED. However, in the IHttpClientFactory approach that is still the case. Shouldn't IHttpClientFactory have fixed this?

    • @RahulNath
      @RahulNath  2 года назад

      When using singleton it does not handle underlying network level changes etc. Which the factory does handle and recycle the instances. Does that answer the question? Do check out this doc link docs.microsoft.com/en-us/dotnet/architecture/microservices/implement-resilient-applications/use-httpclientfactory-to-implement-resilient-http-requests?mvpaWT.mc_id=AZ-MVP-5003875

  • @DaniLearnsIT
    @DaniLearnsIT Месяц назад

    Daaaamn Rahul, no wonder you got the MVP title. That was super clear video. Any question that I started to have through the video, you answered it immediately. Thank you :)

    • @RahulNath
      @RahulNath  Месяц назад

      Very happy to hear that Dani and glad you liked it! Do check out my ASP Series for more bit.ly/asp-net-core-series

  • @mohammadrafi8103
    @mohammadrafi8103 7 месяцев назад +1

  • @ahsana6578
    @ahsana6578 Год назад

    Outstanding its very helpful..
    But I have a problem in order to post request actually I'm injecting web service of TTS which takes a JSON format argument and return json in the form of wave... Can u help in this scenario???

    • @RahulNath
      @RahulNath  Год назад

      Thank you - Did you solve your problem? If not please provide more details around the issue.

  • @rennishj
    @rennishj 3 года назад +1

    Thanks, nice explanation

    • @RahulNath
      @RahulNath  3 года назад

      You are welcome. Do check out the other videos in this series ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP

  • @manikchauhan6373
    @manikchauhan6373 Месяц назад

    Hey mate… you have compressed all the knowledge in 20 minutes, a single source of truth .. bless you buddy

    • @RahulNath
      @RahulNath  Месяц назад

      @@manikchauhan6373 Very happy to hear that Manik! Hope you are liking the ASP Net Series

  • @chetansn6
    @chetansn6 2 года назад

    Hi Rahul, thanks for detailed explanation and much informative on each topic.
    I have one query form this video,
    Query : After creating WeatherService in this also still using HttpClient only right not HttpClirntFactory, how come registering this service in startup class will not have any disadvantages which we discussed at the earlier part of this video. If possible please answer this query.

    • @RahulNath
      @RahulNath  Год назад

      yes but the factory manages the instances and the underlying socket connections. Hope that helps you Chetan.

  • @barwalgayatri4655
    @barwalgayatri4655 3 года назад

    Please please Please Make video 1) How to handle Huge Record Output if Records if records are of of thousands of rows 2) RabbitMQ for async Comm between Microservices . will you ??

    • @RahulNath
      @RahulNath  3 года назад

      Replied here ruclips.net/video/5GlgHV_12-k/видео.html&lc=Ugx8OJ4UpefrHYUjAFJ4AaABAg.9SzdyYZMm-W9SznHUZp5Bk
      (Next time please avoid copy pasting comment, as I've to copy paste replies too 😀)

  • @thaliaquiroz8485
    @thaliaquiroz8485 3 года назад +1

    Amazing video :')

  • @norbertcsibi7720
    @norbertcsibi7720 3 года назад +1

    Minute 18:30* You are using HttpClient, however, why not sticky httpClientFactory? I use that, and when I create an httpClient of that typed method, the base URL is null :/

    • @RahulNath
      @RahulNath  3 года назад

      Using the HttpClientFactory comes under the Basic Usage pattern which is what I show at 12:15. Injecting in the IHttpClient directly is the next usage pattern, which helps clean up the code a bit more, since you don't have to do any of the CreateClient calls etc.When using the factory I believe you need to explicitly set the base URL like I show in the video. Also check the assoicated blog post here if that helps www.rahulpnath.com/blog/are-you-using-httpclient-in-the-right-way/
      Let know if that answers the question

  • @RahulNath
    @RahulNath  3 года назад

    Source Code - rahulpnath.visualstudio.com/DefaultCollection/RUclips%20Samples/_git/MakingHttpRequest
    Related Blog Post - www.rahulpnath.com/blog/are_you_using_httpclient_in_the_right_way/

  • @nirajdahal5019
    @nirajdahal5019 4 года назад +2

    Very useful content. As most of the time in real world
    applications we use a lot of external API. :D

  • @jeodazang
    @jeodazang Год назад

    Thank you for this video sir. This is the most informative video and tutorial that I have watched this week. Thank you for sharing this knowledge.

    • @RahulNath
      @RahulNath  Год назад

      Happy to hear that Jeorlie! Do check out my full series here bit.ly/asp-net-core-series

  • @heshamabdo6024
    @heshamabdo6024 3 года назад +1

    Thank you so much

    • @RahulNath
      @RahulNath  3 года назад

      You're most welcome Hesham!

  • @barwalgayatri4655
    @barwalgayatri4655 3 года назад

    Make video 1) How to handle Huge Record Output if Records if records are of of thousands of rows

    • @RahulNath
      @RahulNath  3 года назад

      Replied here ruclips.net/video/5GlgHV_12-k/видео.html&lc=Ugx8OJ4UpefrHYUjAFJ4AaABAg.9SzdyYZMm-W9SznHUZp5Bk
      (Next time please avoid copy pasting comment, as I've to copy paste replies too 😀)

  • @arjunanselvam
    @arjunanselvam 2 месяца назад

    Thank you so much. All concepts you explain are very clear.

    • @RahulNath
      @RahulNath  2 месяца назад

      @@arjunanselvam Thank you very much Arjunan! Very happy to hear that and hope you are liking the whole Series.

  • @MNewful
    @MNewful 3 года назад +2

    Awesome videos! Your videos are quick and easy to understand. Thank you so much.

    • @RahulNath
      @RahulNath  3 года назад

      Happy to hear that! Thank you 😀

  • @SagnikSaha94
    @SagnikSaha94 4 года назад +1

    Very nicely explained 😊👍
    One small request, can you please prepare a video on how to secure ASP .Net core Web Api using AAD or any authentication mechanism.

    • @RahulNath
      @RahulNath  4 года назад

      Thanks Sagnik. Sure will do it some time soon!

  • @milepetkovski6933
    @milepetkovski6933 2 года назад +1

    Respect 👍

    • @RahulNath
      @RahulNath  2 года назад +1

      Thank you. Do check out the full series bit.ly/asp-net-core-series I am sure you will like it.

  • @triyuga
    @triyuga 3 года назад +1

    It would be cool if you publish your demos as public github repos...

    • @RahulNath
      @RahulNath  3 года назад +1

      Sorry missed posting the link in the comments. Here you go - rahulpnath.visualstudio.com/DefaultCollection/RUclips%20Samples/_git/MakingHttpRequest.
      Thanks for pointing it out!

    • @triyuga
      @triyuga 3 года назад

      @@RahulNath I used this today at work to hit the Australian Business Register.

  • @gregorywilson2124
    @gregorywilson2124 2 года назад +1

    These videos are really helpful, I didn't know about typed clients

    • @RahulNath
      @RahulNath  2 года назад

      Glad it was helpful Gregory. Do check out the full series here bit.ly/asp-net-core-series

  • @mohammadrafi8103
    @mohammadrafi8103 7 месяцев назад +1

    • @RahulNath
      @RahulNath  6 месяцев назад

      Glad you liked it! Do check out the ASP Series bit.ly/asp-net-core-series

  • @shaluatyagi8698
    @shaluatyagi8698 3 года назад +2

    This is my first ever comment on RUclips, as I could not resist to praise your efforts. Your videos are so clean and much better than any other professional paid course. I wish you all the very best and success from my heart.

    • @RahulNath
      @RahulNath  3 года назад

      Wow, thank you! Means a lot and happy you are liking these videos. Do let know if you have any topic suggestions.

    • @shaluatyagi8698
      @shaluatyagi8698 3 года назад +1

      Can you please make videos on azure micro services!

    • @RahulNath
      @RahulNath  3 года назад

      @@shaluatyagi8698 Thank you for the suggestion. Sure yes, I am planning some content around that area!

    • @matthiasstahl6931
      @matthiasstahl6931 Год назад

      Same from my side!

  • @hakami1426
    @hakami1426 Год назад

    Would you recommend using typed clients or using strings as keys?

    • @RahulNath
      @RahulNath  Год назад

      What are you referring to with strings as keys ? Can you please give more details

    • @hakami1426
      @hakami1426 Год назад

      @@RahulNath The alternative to using typed clients, where you pass a string to specify the base address of an api.

  • @matheusgeorgo
    @matheusgeorgo 3 года назад +1

    Hello Rahul, I appreciate the video, and I was wondering if you could make a follow-up but with Oath authentication. Thanks for the good explanation and example.

    • @RahulNath
      @RahulNath  3 года назад +1

      Thank you Sllan. Yes I am working on a series on authentication videos and they will be out soon.

  • @ruckmangadan
    @ruckmangadan Год назад +1

    👏

  • @RAKESHKUMAR-wv5qr
    @RAKESHKUMAR-wv5qr Год назад +1

    Simple, clean and clear. Thanks :)

    • @RahulNath
      @RahulNath  Год назад

      You're welcome Rakesh! Do check out the ASP Series bit.ly/asp-net-core-series

  • @harendrasinghrana
    @harendrasinghrana Год назад

    very helpful. Thanks for your efforts!

    • @RahulNath
      @RahulNath  Год назад

      Glad you like it. Do check out the full series here bit.ly/asp-net-core-series

  • @reallifegambits
    @reallifegambits 3 месяца назад

    Your channel is treasure for me, Thanks.

    • @RahulNath
      @RahulNath  2 месяца назад

      Very happy that you like it! Do check out the ASP Net Series bit.ly/asp-net-core-series
      Feel free to reach out if you have any questions or content suggestions.

  • @mahmoudzeort7078
    @mahmoudzeort7078 2 года назад +1

    Great, in dept. and helpful explanation. Thank you a lot! Bravoooooo

    • @RahulNath
      @RahulNath  2 года назад

      Glad you enjoyed it Mahmoud!

  • @balanatrayan
    @balanatrayan 3 года назад +1

    Thank you Rahul! This is an excellent video. Quick question. I'm looking for a way to call the API for every 5 minutes. For ex: If I have to call this WeatherAPiI for every 5 mins, How would I do it? Do you have any suggestions?

    • @RahulNath
      @RahulNath  3 года назад

      Thank you Bala. I would consider Background Tasks first. you can check it out here ruclips.net/video/oWMQKjHrlJE/видео.html
      Let me know if that helps or if you have additional questions

    • @balanatrayan
      @balanatrayan 3 года назад

      @@RahulNath Thank you Rahul! Your video on Background Tasks helped me to understand the BackgroundService concepts clearly. I was able to call the API for every 5 mins using the BackgroundService. I really appreciate your effort.

    • @RahulNath
      @RahulNath  3 года назад

      @@balanatrayan Great to know that and glad it helped 👍

  • @triyuga
    @triyuga 4 года назад +2

    Wow!

  • @luvrahooo
    @luvrahooo 2 года назад +1

    Really awesome videos, could you please explain how to perform Post function like the way you did for Get from weather api. How to handle the json passed to the endpoint?

    • @RahulNath
      @RahulNath  2 года назад +1

      Glad you like it, Rahul. did you get a chance to see the Model Binding video - that explain in detail about it ruclips.net/video/bxksp575pk8/видео.html
      Also you can check out the full ASP Net Series here bit.ly/asp-net-core-series

    • @luvrahooo
      @luvrahooo 2 года назад +1

      @@RahulNath yes I am going that video. Basically wanted to build webhook listener for tradingview webhook alerts and then process it for rest apis provided by brokers.

    • @RahulNath
      @RahulNath  2 года назад

      @@luvrahooo Prefect ok - let me know if you have additional questions and happy to help!

  • @etzumahkaya9583
    @etzumahkaya9583 2 года назад

    NET 6 don't have startup.cs

    • @RahulNath
      @RahulNath  2 года назад

      True, but everything else still holds true. What are you facing difficulty with?

  • @abhilashalby1593
    @abhilashalby1593 2 года назад

    Hi I have query.
    How can I specify the base api address in typed client/ named client, if I am using options pattern.(My api base address is in appSettings.Json)
    When I checked the Microsoft official doc they are saying "Don't use IOptions or IOptionsMonitor in Startup.ConfigureServices. An inconsistent options state may exist due to the ordering of service registrations."
    If I use Configuration.GetSection it will not reload between changes.

    • @RahulNath
      @RahulNath  2 года назад

      What are you trying to solve Abhilash? Do you want to change the base uri runtime ? Can you provide more details

    • @abhilashalby1593
      @abhilashalby1593 2 года назад

      ​Actually I just started learning core and was playing around with it, and just curious about how to set the base url using the options pattern

    • @RahulNath
      @RahulNath  2 года назад

      @@abhilashalby1593 if the url is dynamic I wouldn’t bake in the base url, instead use the full link when using then HTTPClient .

    • @abhilashalby1593
      @abhilashalby1593 2 года назад +1

      @@RahulNath Ok, Many thanks

  • @heatherbeckman1767
    @heatherbeckman1767 2 года назад

    Thank you! I subscribed.

    • @RahulNath
      @RahulNath  2 года назад +1

      Thank you Heather! Do check out the full series here bit.ly/asp-net-core-series. I'm sure you'll like it 🙂

  • @rathanveereddy9829
    @rathanveereddy9829 4 года назад +1

    Useful content and great explanation. Keep it up. Thanks for the video.

    • @RahulNath
      @RahulNath  4 года назад

      Glad it was helpful!

  • @pardhasaradhivasamsetty7693
    @pardhasaradhivasamsetty7693 Год назад

    Thank you it helped me a lot. You are the best

    • @RahulNath
      @RahulNath  Год назад

      Glad it helped! Hope you are enjoying the series bit.ly/asp-net-core-series

  • @badrulhussain5545
    @badrulhussain5545 3 года назад +1

    Wicked! you made this simple for me and thanks!

    • @RahulNath
      @RahulNath  3 года назад

      That's so nice to hear Badrul!

  • @HenryTsang
    @HenryTsang Год назад

    Thank you again for an excellent explanation. Even though this is already 3 years old, information is still very valuable. By the way, I am wondering if you have any design thoughts on making a "generic" http handler? I google around, it seems complicated. If you have any insights, would greatly appreciate your teaching on it. Thank you.

  • @Gioandgoose
    @Gioandgoose 2 года назад

    Rahul Nath you are the man! Thank you sir!!

    • @RahulNath
      @RahulNath  2 года назад

      Thank you Gio! Glad this helped and also for supporting me here on the channel 🙂

  • @lalithmahadev5027
    @lalithmahadev5027 3 года назад

    could you do a video on request rate limiting ?

    • @RahulNath
      @RahulNath  3 года назад

      Thank you for the suggestion Lalith. Are you looking at it from the server or the client side? I had done a video on Polly which helps you achieve this from the client side ruclips.net/video/z6YcU0PW_9E/видео.html
      Let me know if that helps you.

  • @touqeerhameed3435
    @touqeerhameed3435 Год назад +1

    very informative, easy to understand really

  • @Azcraz
    @Azcraz 3 года назад +1

    Amazing videos! You've helped me greatly on my enterprise application!

    • @RahulNath
      @RahulNath  3 года назад

      Happy to hear that! Do let know if there are specific topics that you are looking for

  • @htowns5822
    @htowns5822 3 года назад +1

    Thank You Rahul for the detailed tutorial ❣

    • @RahulNath
      @RahulNath  3 года назад +1

      Glad you liked it - Check out the full ASP Series bit.ly/asp-net-core-series. I'm sure you will like it

  • @TheDeckerFamily
    @TheDeckerFamily Год назад

    Thanks for the info, good stuff.

    • @RahulNath
      @RahulNath  Год назад

      Glad it was helpful Madison! Hope you are enjoying the full series bit.ly/asp-net-core-series

  • @ramashankar2750
    @ramashankar2750 3 года назад +1

    Is there any harm in using only the HTTP post and the action (get,put,delete,..... ad on more ) hidden in the header/json packet and implement the rest in a dll for the ease of maintenance, do appreciate that it is against the tenets of the design pattern.

    • @RahulNath
      @RahulNath  3 года назад

      I wouldn't do that. What's the ease of maintenance in this case? I've seen this at some places early in my career and I find it harder. Here is a good SO link that discusses different things around the same question security.stackexchange.com/questions/154462/why-cant-we-use-post-method-for-all-requests
      Keen to know your thoughts? Are you using this at the current project?

    • @ramashankar2750
      @ramashankar2750 3 года назад

      @@RahulNath Thank you for illuminating me on the browser behaviour on GET/POST , was not aware of it, Yes I am using this in my project which spans over a db of 3000 Tables/5000 screens aka pages /25000 end points evolved over 35 years operating both on LAN for speed, richness , keyboard and web for spread, using JWT for persistence over EF6 since a single object maps to 25 classes (nested) and associated UI rendering. Experienced over 15 Years on UI conversion from silverlight era to rusting JS frameworks and now to Blazor (one stop shop) Dot net 6 , written a DSL which will combine HTTP + Workflow + object Behaviour + Versioning leading to 30-50 verbs; Ease of Maintenance : Enable Band-Aid the key consideration in App design, functionality is like an amoeba changing frequently, like the mutation of corona; hence my curiosity on rendering and address related racing in async?

    • @RahulNath
      @RahulNath  3 года назад

      @@ramashankar2750 If it's working for you then why not. But I would not suggest it. Also, such practices could also be a put-off for newer team members who might join the team or already in the team. I don't see how using POST-only endpoints makes it any easier to maintain the application. But if it is, why not😀

    • @ramashankar2750
      @ramashankar2750 3 года назад

      @@RahulNath You could have a Part 2 of this Video with Dot net HTTP/2 Protocol support for server progress msg for long running jobs - evolve (instead of a push notification) and check settings on Browser for it. In fact we are planning to treat endpoint be treated like a task on the server based on guid and store the state instead of Fluxor, immaterial short / long and use http/2 to address the progression.

  • @vikasjaiswal3729
    @vikasjaiswal3729 3 года назад +1

    Thanks Rahul Nice Explaination

    • @RahulNath
      @RahulNath  3 года назад

      Glad you liked it Vikas!

  • @divyanshusoni3448
    @divyanshusoni3448 2 года назад

    Highly recommendable video

    • @RahulNath
      @RahulNath  2 года назад

      Glad you think so! Do check out the full series bit.ly/asp-net-core-series

  • @RAM-ff8dy
    @RAM-ff8dy 4 года назад +1

    You always provide great content

    • @RahulNath
      @RahulNath  4 года назад

      Thanks Ram. Glad you are liking it!

  • @TheBdemba16
    @TheBdemba16 2 года назад

    Great explanation. Any way you could make a video on how to create a nugget for API? Essentially if I have a simple API and want to turn this into some middleware, so that a client app can just install the nugget, register the service, inject it and be able to call the API endpoint that way.

  • @ubongsky1
    @ubongsky1 4 дня назад

    This is lovely

    • @RahulNath
      @RahulNath  3 дня назад

      Glad you liked it! Do check out the ASP Series bit.ly/asp-net-core-series

  • @mannychohan
    @mannychohan 10 месяцев назад

    Great tutorial Rahul.

    • @RahulNath
      @RahulNath  10 месяцев назад

      Thank you Manny! Hope you are liking the series bit.ly/asp-net-core-series

  • @shashikiran5388
    @shashikiran5388 2 года назад

    Excellent as usually. I like to have a topic from you regarding ASYNC AWAIT in WEBAPI. I know and worked on ASYNC & AWAIT but I have some gaps in understanding it. Is it possible for you to cover this topic in your style. Thanks Rahul.

    • @RahulNath
      @RahulNath  2 года назад

      Great suggestion Shashi! I will add this to my list and try and make a video. Happy you like these videos, The full ASP Series is here bit.ly/asp-net-core-series

  • @Potzakv20
    @Potzakv20 2 года назад

    Love your videos, keep on going. With content like this, you are going to be huge!

    • @RahulNath
      @RahulNath  2 года назад

      Thanks, will do! glad these are helping

  • @mayureshs80
    @mayureshs80 4 года назад +1

    Nice work! How would the DI look if there were multiple services each calling a different external HTTP endpoint? Would you keep on repeating the AddHttpClient call for each of those service ?

    • @RahulNath
      @RahulNath  4 года назад +1

      Thanks, Mayuresh.
      Yes, I do repeat the AddHttpClient multiple times. To make it cleaner you can write an extension method and use that in the Startup.cs (like below)
      _services.AddWeatherService();_
      Check out this commit for an example - bit.ly/httpclientextension
      Let know if that helps.

    • @mayureshs80
      @mayureshs80 4 года назад

      @@RahulNath Thanks for the tip. That helps. This would make it possible to create a endpoint specific base service class as well and have every other service inherit from it.

    • @RahulNath
      @RahulNath  4 года назад

      With the base service class what properties are you trying to inherit? I generally try to avoid inheritance for code reuse

    • @mayureshs80
      @mayureshs80 4 года назад

      @@RahulNath Probably just the endpoint property if there are multiple service classes using the same endpoint.

    • @RahulNath
      @RahulNath  4 года назад

      ​@@mayureshs80 Ok.

  • @sureshp34
    @sureshp34 2 года назад

    Hi Rahul,
    This video is really very much helpful for the better understanding. Thanks a lot for posting the video.

    • @RahulNath
      @RahulNath  2 года назад

      You are most welcome Suresh! Do check out the full series for ASP NET - I'm sure you'll love it bit.ly/asp-net-core-series

  • @Kishore-w5j
    @Kishore-w5j 5 месяцев назад

    Extrodinary!!!.

    • @RahulNath
      @RahulNath  5 месяцев назад +1

      Thank you Kishore!! Do check out the ASP Series bit.ly/asp-net-core-series

  • @74himgup
    @74himgup 2 года назад

    Hi Rahul, in an Interview today they asked me whether httpclient is singleton or scoped and if I have heard of socket issue. Both of the things you have explained beautifully here...Kudos !!! :)

    • @RahulNath
      @RahulNath  Год назад

      Glad it helped Himanshu. Hope you were able to successfully find a new job!

  • @yondaimefourth
    @yondaimefourth 2 года назад

    Damn! Now I can pass my technical exam. All I need to add is the Polly

    • @RahulNath
      @RahulNath  2 года назад +1

      Glad you liked it and wish you luck for the exam. For polly check out here ruclips.net/video/z6YcU0PW_9E/видео.html

    • @yondaimefourth
      @yondaimefourth 2 года назад +1

      @@RahulNath great stuff! If I were to learn your aws course will it also prepare me for the associate developer certification?

    • @RahulNath
      @RahulNath  2 года назад +1

      @@yondaimefourth I haven't taken the associate developer certification myself so not sure of that. The Lambda course gives a good introduction to AWS Lambda and a few commonly used services when building Serverless applications. Currently, there is a discount on the course - details there on my latest giveaway video here ruclips.net/video/2eieEJAXmIk/видео.html
      I also have an AWS series here on this channel bit.ly/aws-net-series.
      Happy to help if you have additional questions.

    • @yondaimefourth
      @yondaimefourth 2 года назад +1

      @@RahulNath great! Thanks mate

  • @santiagotapia534
    @santiagotapia534 Год назад

    This is just perfect. There is a how and why and why not for each possibility. I would add a configuration setting for the base url.

    • @RahulNath
      @RahulNath  Год назад

      Glad you like it Santiago and yes I would add a configuration setting too. Wanted to keep the demo simple. Do check out the full series bit.ly/asp-net-core-series

  • @AnjuU-db6pn
    @AnjuU-db6pn Год назад

    Came across your channel today and subscribed right away! Thanks for the clear explanation.

    • @RahulNath
      @RahulNath  Год назад

      Awesome, thank you Anju! You can check out the full series here bit.ly/asp-net-core-series

  • @prakash28nov
    @prakash28nov 3 года назад

    Excellent Video

    • @RahulNath
      @RahulNath  3 года назад

      Thank you very much Prakash! The full ASP Series is here bit.ly/asp-net-core-series

  • @paddymcglone9079
    @paddymcglone9079 3 года назад +1

    Fantastic video

  • @jupiterblaze2961
    @jupiterblaze2961 2 года назад

    Great video.

    • @RahulNath
      @RahulNath  2 года назад

      Glad you enjoyed it Jupiter! Do check out the full series here bit.ly/asp-net-core-series

  • @ramkumarramanathan3392
    @ramkumarramanathan3392 2 года назад

    Great content

    • @RahulNath
      @RahulNath  2 года назад +1

      Glad you like it - Do check out the full series bit.ly/asp-net-core-series

  • @techmantras6078
    @techmantras6078 2 года назад

    Thank you! your content is very valuable and easy to understand , you opened my eyes, thanks for your efforts.

    • @RahulNath
      @RahulNath  2 года назад

      Happy to hear that! Hope you are enjoying the series bit.ly/asp-net-core-series

  • @aktaruzzamansuman6264
    @aktaruzzamansuman6264 3 года назад

    Nice tuts

    • @RahulNath
      @RahulNath  3 года назад

      Glad you like them! Do check out the full series here ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP

  • @melk48111
    @melk48111 2 года назад

    Excellent

    • @RahulNath
      @RahulNath  2 года назад

      Thank you so much Melvis 😀 Do check out the full series here bit.ly/asp-net-core-series
      I am sure you will like it. Do let me know in case you get to watch it.

  • @rajusarmah4716
    @rajusarmah4716 2 года назад

    Thanks a lot Rahul for this tutorial. It has always been informative to go through your videos.

    • @RahulNath
      @RahulNath  2 года назад

      Happy to hear that Raju! The full series is here ruclips.net/p/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP

  • @sourabhchauhan6602
    @sourabhchauhan6602 3 года назад

    Love it

    • @RahulNath
      @RahulNath  3 года назад

      Thank you, Sourabh! Do check out the full series bit.ly/asp-net-core-series