REST API Interview Questions (Advanced Level)

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 พ.ค. 2024
  • Don't leave your software engineering career path to chance. Make sure you're interview-ready with Exponent's software developer interview prep course: bit.ly/3Cd56T5
    Watch our previous video on beginner REST API interview questions: • REST API Interview Que...
    In this video, Kevin Wei explains the answers to some of the most common advanced REST API interview questions for developers. We cover payloads, REST messaging, HTTP requests and methods.
    Chapters -
    00:00 - Introduction
    00:30 - What is the difference between PUT, POST, and PATCH?
    01:22 - What is a payload in the context of a REST API?
    01:47 - What is a REST message?
    02:11 - What are the core components of an HTTP request?
    02:59 - What are the core components of an HTTP response?
    03:49 - What is an idempotent method and why are they important?
    04:32 - What's the difference between idempotent and safe HTTP methods?
    04:51 - Explain caching in a RESTful architecture?
    05:21 - Best practices in developing a RESTful web service
    Watch more videos here:
    - Amazon SWE answers system design interview question: • Amazon System Design I...
    - Google SWE answers algorithms interview question: • Google Software Engine...
    - Google TPM answers Tiktok system design interview question: • System Design Mock Int...
    - Microsoft SWE answers algorithms interview question: • Microsoft Software Eng...
    👉 Subscribe to our channel: bit.ly/exponentyt
    🕊️ Follow us on Twitter: bit.ly/exptweet
    💙 Like us on Facebook for special discounts: bit.ly/exponentfb
    📷 Check us out on Instagram: bit.ly/exponentig
    📹 Watch us on TikTok: bit.ly/exponenttikttok
    ABOUT US:
    Did you enjoy this interview question and answer? Want to land your dream career? Exponent is an online community, course, and coaching platform to help you ace your upcoming interview. Exponent has helped people land their dream careers at companies like Google, Microsoft, Amazon, and high-growth startups. Exponent is currently licensed by Stanford, Yale, UW, and others.
    Our courses include interview lessons, questions, and complete answers with video walkthroughs. Access hours of real interview videos, where we analyze what went right or wrong, and our 1000+ community of expert coaches and industry professionals, to help you get your dream job and more!
    #softwareengineering #restapis #soapapi #uri #ajax #javascript #xml

ความคิดเห็น • 39

  • @tryexponent
    @tryexponent  4 หลายเดือนก่อน

    Don't leave your software engineering career path to chance. Make sure you're interview-ready with Exponent's software developer interview prep course: bit.ly/3Cd56T5

  • @Boringpenguin
    @Boringpenguin ปีที่แล้ว +31

    0:30 #1 What is the difference between PUT, POST and PATCH?
    1:22 #2 What is a payload in the context of a REST API?
    1:47 #3 What is a REST message?
    2:11 #4 What are the core components of an HTTP request?
    2:59 #5 What are the core components of an HTTP response?
    3:49 #6 What is an idempotent method and why are they important?
    4:32 #7 What is the difference between idempotent and safe HTTP methods?
    4:51 #8 Explain caching in a RESTful architecture

  • @khushishareef2909
    @khushishareef2909 หลายเดือนก่อน +1

    Best practices
    1. Supporting JSON data transfer
    2. Using proper status codes
    3. Using URI hierarchy to represent the relationship between resources
    4. Using idempotent HTTP methods
    5. Using caching
    6. Incorporating security measures

  • @laponiec
    @laponiec 9 หลายเดือนก่อน +1

    Short and sweet, love the fromat of your videos and thank you all the effort you put into them.

  • @snavesinned
    @snavesinned ปีที่แล้ว +16

    For "advanced", I'd expect more from the question on the difference between PUT, PATCH, and POST. POST requests the server create a new resource and respond with its newly created URI.
    PUT and PATCH will update, or MAY create, a resource at a specific URI. The difference being PUT replaces (overwrites) the resource and PATCH simply updates specific properties.
    It's important to note that PUT is the only true idempotent action of the three. PATCH may be idempotent but not always.
    It's also important to note that on PUT and PATCH operations, if the resource doesn't exist, the server MAY create the resource, but doesn't have to. This just depends on whether the service requires it creates URIs via POST or is OK with UTIs being created by PUT and PATCH requests. If the latter, handlers of those requests should validate if all fields required to create a resource are present before it creates the resource should it not exist.
    Most importantly, API developers should stop treating PUT like a PATCH operation which seems like common practice because GET, POST, PUT, and DELETE operations are too commonly likened to CRUD operations without the explanation of the differences.
    HTTP requests are an operation on the resource at a URI, not the datasource. It's not a 1:1 CRUD pass-through to the datasource, especially since URIs represent more than data in a datasource.

    • @Hey__Luna__912
      @Hey__Luna__912 ปีที่แล้ว +1

      Thank you. It was really useful info to learn. Do you have any suggestions of some resources where one can learn more such in-depth info about REST-api ?

    • @huywarrior
      @huywarrior 10 หลายเดือนก่อน +2

      I really like your interpretation of the question "What is the difference between PUT and PATCH". It cleans, simplifies, and filters the gist! Repeat at your own discretion and memorize to reinforce the knowledge, in my opinion:
      Put: Overwrite all
      Patch: Change only necessary components and attributes

  • @shrashetty8279
    @shrashetty8279 ปีที่แล้ว +3

    Awesome!! Precise defination. On point explanation

  • @suvrojyotibhuniya3524
    @suvrojyotibhuniya3524 ปีที่แล้ว

    Thanks bro,you explained very efficiently,keep working...

  • @biancastefania184
    @biancastefania184 6 หลายเดือนก่อน

    You are awesome! Keep up the great work💯

  • @felipefreitas1498
    @felipefreitas1498 ปีที่แล้ว +1

    Great video! Thanks!!!

  • @jayavishnuramsaravanaraj1876
    @jayavishnuramsaravanaraj1876 ปีที่แล้ว

    Thanks for sharing the knowledge

  • @rasikasamith
    @rasikasamith 19 วันที่ผ่านมา

    Thanks a lot. Super video.

  • @edwinrosales6322
    @edwinrosales6322 10 หลายเดือนก่อน +1

    Great tips!

  • @legostarwarszadzi
    @legostarwarszadzi 8 หลายเดือนก่อน

    Golden content thank you

  • @kushalkamra3803
    @kushalkamra3803 ปีที่แล้ว +2

    Awesome ❤

  • @SethWilson
    @SethWilson ปีที่แล้ว

    Thanks :) good stuff.

  • @TKGZONE
    @TKGZONE ปีที่แล้ว +12

    I wish I got these questions in an interview 😂

  • @pedepatopimenta
    @pedepatopimenta 6 หลายเดือนก่อน

    Good stuff!

  • @samirmahmudlu
    @samirmahmudlu ปีที่แล้ว

    Thank you

  • @shreyashachoudhary480
    @shreyashachoudhary480 ปีที่แล้ว +2

    Epic!

  • @Pablo-bl7nu
    @Pablo-bl7nu ปีที่แล้ว +2

    cool, thnx

  • @judepope6196
    @judepope6196 2 หลายเดือนก่อน

    love it

  • @rushikeswararaopolaki3602
    @rushikeswararaopolaki3602 ปีที่แล้ว

    Good stuff

  • @chaitanyakampara3944
    @chaitanyakampara3944 5 วันที่ผ่านมา

    good rest api

  • @dirktrash3455
    @dirktrash3455 10 หลายเดือนก่อน

    Great video! I did have a question, though: how does caching work when RESTful APIs are supposed to be stateless? Doesn't that violate that principle?

    • @tryexponent
      @tryexponent  10 หลายเดือนก่อน +4

      Hey dirktrash3455! You are right in that RESTful APIs follow the statelessness principle, where the server doesn't store client-specific information between requests i.e. each request contains all necessary data.
      Caching, a performance optimization technique, stores and reuses previous responses. Therefore, caching does not violate the statelessness principle because the server's response itself is cached, not the server's state.
      Hope this helps!

    • @dirktrash3455
      @dirktrash3455 10 หลายเดือนก่อน

      @@tryexponent That's very helpful, thanks!

  • @111rhishishranjan2
    @111rhishishranjan2 8 หลายเดือนก่อน +1

    what is meta data at 5:10 ? can anyone explain it ??

  • @milance123456
    @milance123456 ปีที่แล้ว +45

    Thats not really advanced

    • @Isomorphist
      @Isomorphist ปีที่แล้ว +1

      because REST APIS are relatively simple

    • @shenth27
      @shenth27 8 หลายเดือนก่อน +1

      It's advanced for the author

  • @stickysteve14
    @stickysteve14 7 หลายเดือนก่อน

    im assuming the first question is to make sure the resume wasnt a lie lmao

  • @mysterio7385
    @mysterio7385 ปีที่แล้ว +3

    Good explanation, but this is not advanced level...

  • @aaqibhamdule73
    @aaqibhamdule73 ปีที่แล้ว +5

    You should not do clickbait by saying Advanced Questions and just state plain basics.

    • @rrrrr16able
      @rrrrr16able วันที่ผ่านมา

      Exponent is fake. You say advanced and talk about what is payload and all of your mock interviews are crap with bs candidates who are amateurs..

  • @rrrrr16able
    @rrrrr16able วันที่ผ่านมา

    Exponent is fake. You say advanced and talk about what is payload and all of your mock interviews are crap with bs candidates who are amateurs..

  • @jscoding402
    @jscoding402 5 หลายเดือนก่อน

    Thank you