REST рдФрд░ SOAP рдХреЗ рдмреАрдЪ рдЕрдВрддрд░

рдпрд╣ рд▓реЗрдЦ REST рдФрд░ SOAP рдХреЗ рдмреАрдЪ рдмреБрдирд┐рдпрд╛рджреА рдЕрдВрддрд░ рдХреЗ рдХреБрдЫ рдкрд╣рд▓реБрдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИред

рдУрд╣ ... рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдирдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рд╕рдВрддрд░реЗ рдХреА рддреБрд▓рдирд╛ рд╕реЗрдм рдХреА рддрд░рд╣ рдПрдХ рд╕рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ SOAP рдПрдХ XML- рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкреНрд░рд╛рд░реВрдк рд╣реИ, рдЬрдмрдХрд┐ REST рдПрдХ рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред



рддреБрдо рд╕реАрдЦ рдЬрд╛рдУрдЧреЗ


  • REST рдХреНрдпрд╛ рд╣реИ?
  • SOAP рдХреНрдпрд╛ рд╣реИ?
  • REST рдФрд░ SOAP рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ?

рдЕрдиреНрдп рдПрдкреАрдЖрдИ


REST API рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЗрдЦреЛрдВ рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдпрд╣ рджреВрд╕рд░рд╛ рд▓реЗрдЦ рд╣реИ:

  • рд░реЗрд╕реНрдЯ рдПрдкреАрдЖрдИ рдХрд╛ рдкрд░рд┐рдЪрдп - рд░реЗрд╕реНрдЯрдлреБрд▓ рд╡реЗрдм рд╕рд░реНрд╡рд┐рд╕реЗрдЬ
  • REST рдФрд░ SOAP рдХреЗ рдмреАрдЪ рдЕрдВрддрд░
  • REST API рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ - рдХреЙрдиреНрдЯреНрд░реИрдХреНрдЯ рдлрд░реНрд╕реНрдЯ (рдЕрдиреБрдмрдВрдз рдкрд╣рд▓реЗ) рдХреНрдпрд╛ рд╣реИ?
  • REST API рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ - рдХреЛрдб рдлрд░реНрд╕реНрдЯ (рдХреЛрдб рдлрд░реНрд╕реНрдЯ) рдХреНрдпрд╛ рд╣реИ?
  • REST API - HATEOAS рдХреНрдпрд╛ рд╣реИ?
  • рдЕрдиреНрдп рдПрдкреАрдЖрдИ рдЕрдиреБрд╢рдВрд╕рд╛рдПрдБ - рдЬрд╛рд╡рд╛ рдФрд░ рд╡рд╕рдВрдд рдореЗрдВ рд╡реЗрдм рд╕реЗрд╡рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЙрджрд╛рд╣рд░рдг

рдмрд╛рдХреА рдФрд░ рд╕реЛрдк


рдмрд╛рдХреА рдФрд░ SOAP рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рддреБрд▓рдиреАрдп рдирд╣реАрдВ рд╣реИрдВред REST рдПрдХ рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рд╢реИрд▓реА рд╣реИред SOAP рдПрдХ рдореИрд╕реЗрдЬрд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рд╣реИред рдЖрдЗрдП REST рдФрд░ SOAP рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВред

  • рд╢реНрд░реЗрд╖реНрда рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЙрджрд╛рд╣рд░рдг: HTTP рдкрд░ JSON
  • SOAP рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЙрджрд╛рд╣рд░рдг: HTTP рдкрд░ SOAP рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ XML

рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдкрд░, SOAP рдЖрдкрдХреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ REST рдПрдХ рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ рдЬреЛ HTTP рдХреЛ рдкрд░рд┐рд╡рд╣рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИред

  • SOAP рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдПрдХ рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдкреНрд░рд╛рд░реВрдк рд╣реИред SOAP рдХреЗ рд╕рд╛рде, рдпрд╣ рд╣рдореЗрд╢рд╛ SOAP-XML рд╣реИ, рдЬрд┐рд╕рдореЗрдВ XML рд╢рд╛рдорд┐рд▓ рд╣реИ:
    - рд▓рд┐рдлрд╛рдлрд╛ (рд▓рд┐рдлрд╛рдлрд╛) - рдореВрд▓ рддрддреНрд╡ рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рд╕рдВрджреЗрд╢ рдФрд░ рдирд╛рдорд╕реНрдерд╛рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ,
    - рд╣реИрдбрд░ (рд╣реЗрдбрд░) - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрджреЗрд╢ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдирдХрд╛рд░реА рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд░реВрдЯрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА,
    - рдирд┐рдХрд╛рдп (рдирд┐рдХрд╛рдп) - рдореЗрдВ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрджреЗрд╢ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИ,
    - рджреЛрд╖ - рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрддреНрд╡ рдЬреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рд╣реБрдИ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЛрдиреЛрдВ SOAP рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  • REST рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдкрд░рд┐рд╡рд╣рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ HTTP рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИред рдЗрд╕рдХрд╛ рддрд╛рддреНрдкрд░реНрдп HTTP рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрддреНрдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд░реНрд╡реЛрддреНрддрдо рдЙрдкрдпреЛрдЧ рд╕реЗ рд╣реИ - рдЕрдиреБрд░реЛрдз рдХреЗ рддрд░реАрдХреЗ, рдЕрдиреБрд░реЛрдз рд╢реАрд░реНрд╖рд▓реЗрдЦ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╢реАрд░реНрд╖рд▓реЗрдЦ, рдЖрджрд┐ред

рдореИрд╕реЗрдЬрд┐рдВрдЧ рдлреЙрд░реНрдореЗрдЯ


  • SOAP рдореЗрдВ, рдЖрдк рдЕрдиреБрд░реЛрдзреЛрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП SOAP XML рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
  • REST рдореЗрдВ рдРрд╕рд╛ рдХреЛрдИ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рд╛рд░реВрдк рдирд╣реАрдВ рд╣реИред рдЖрдк XML, JSON рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред JSON рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред

рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ


  • SOAP рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдФрд░ рдЙрди рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП XML- рдЖрдзрд╛рд░рд┐рдд рднрд╛рд╖рд╛ WSDL (рд╡реЗрдм рд╕реЗрд╡рд╛ рд╡рд┐рд╡рд░рдг рднрд╛рд╖рд╛) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
  • REST рдХреЗ рдкрд╛рд╕ рдорд╛рдирдХ рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛ рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ WADL рдкрд╣рд▓реЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдорд╛рдирдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдерд╛, рдпрд╣ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд╕реНрд╡реИрдЧрд░ рдпрд╛ рдУрдкрди рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИред

рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ


рдПрд╕рдУрдПрдкреА рдкрд░рд┐рд╡рд╣рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдкреНрд░рдХрд╛рд░ рдкрд░ рдХреЛрдИ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд▓рдЧрд╛рддрд╛ рд╣реИред рдЖрдк рд╡реЗрдм HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдпрд╛ MQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

REST HTTP рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдЖрд╕рд╛рдиреА


RESTFful рд╡реЗрдм рд╕реЗрд╡рд╛рдПрдВ рдЖрдорддреМрд░ рдкрд░ SOAP- рдЖрдзрд╛рд░рд┐рдд рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред

  • REST рдЖрдорддреМрд░ рдкрд░ JSON рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдкрд╛рд░реНрд╕ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рдЖрд╕рд╛рди рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, REST рдХреЛ рд╡реЗрдм рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
  • рд╣рд╛рд▓рд╛рдВрдХрд┐, SOAP рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ WSDL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ SOAP-XML рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддреЗ рд╕рдордп рдмрд╣реБрдд рдЕрдзрд┐рдХ рдУрд╡рд░рд╣реЗрдб рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ рд▓реЗрдЦрдХ рдХрд╛ рд╡реАрдбрд┐рдпреЛ рднреА рд╣реИ

рд╕рд╛рд░рд╛рдВрд╢


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ REST рдФрд░ SOAP рдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░реЛрдВ рдХреА рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЬрд╛рдБрдЪ рдХреА рд╣реИред

рдЕрддрд┐рд░рд┐рдХреНрдд рдкрдврд╝рдиреЗ


2019 рдореЗрдВ рдЬрд╛рд╡рд╛ рдФрд░ рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд░реАрд╕реНрдЯрдлреБрд▓ рд╡реЗрдм рд╕реЗрд╡рд╛ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП 5 рдкрд╛рдареНрдпрдХреНрд░рдо

рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП 10 рдПрдкреАрдЖрдИ рдкрд░реАрдХреНрд╖рдг рдпреБрдХреНрддрд┐рдпрд╛рдБ (рд╕реЛрдк рдФрд░ рдмрд╛рдХреА)

Source: https://habr.com/ru/post/hi483204/


All Articles