Fosrestbundle: рдорд╛рд░реНрдЧреЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рдЖрд░рдИрдПрд╕рдЯреА рдПрдкреАрдЖрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рдкреАрдврд╝реА

рдХреЛ рдирд┐рд░реНрдорд┐рдд 20 рдЕрдкреНрд░реИрд▓ 2011  ┬╖  26рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: FriendsOfSymfony/FOSRestBundle

рдкрд░рд┐рднрд╛рд╖рд┐рдд рдорд╛рд░реНрдЧреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ рдЖрд░рдИрдПрд╕рдЯреА рдПрдкреАрдЖрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ (рд╢рд╛рдпрдж рджреГрд╢реНрдп рдкрд░рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╢рд╛рдорд┐рд▓ - рд╕реНрд╡реАрдХрд╛рд░реНрдп рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд╕рд╛рде)

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдкреБрд░рд╛рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддрдм рд╕реЗ рдХреБрдЫ рдЪреАрдЬреЗрдВ рдмрджрд▓ рдЧрдИрдВ рдФрд░ рд╕реНрд╡реИрдЧрд░/рдУрдкрдирдкреА рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ/рдмрдВрдбрд▓ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдореБрдЭреЗ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рддреЗрдЬрд╝реА рд╕реЗ рдорд┐рд▓рд╛ред
рдЗрд╕ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдореМрдХрд╛? рдЪреВрдВрдХрд┐ NelmioApiDocBundle рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╕реНрд╡реИрдЧрд░ / OpenApi (рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, RAML, ...?) рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрдлрдиреА рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реЛред

рд╕рднреА 26 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреБрдЫ рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП http://getfrapi.com/ рд╕реНрдХреНрд░реАрдирдХрд╛рд╕реНрдЯ рджреЗрдЦреЗрдВред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╣реА рджреЗрдЦ рд▓рд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдирдХреЗ рдПрд╣рд╕рд╛рд╕ рдореЗрдВ рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЙрдирдХрд╛ REST RESTful рдирд╣реАрдВ рд╣реИ :-D

"рдкреНрд░реЗрд░рдгрд╛" рдФрд░ рдореИрдВ рдЙрдирдХреЗ рдЖрд░рд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдЙрдирдХреЗ рдбреЙрдХреНрдЯрд░ (рдФрд░ рдкрд░реАрдХреНрд╖рдг) рдкреАрдврд╝реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ :)

рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣рдо WADL рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдХреА рдкреАрдврд╝реА рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

http://www.w3.org/Submission/wadl/

рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдкреАрдврд╝реА рд╕реЗ рдмреЗрд╣рддрд░ рджрд┐рд╢рд╛ рдХреБрдЫ рджреГрд╢реНрдп рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдХреЛрдВ/рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рддреНрд╡рд░рд┐рдд рдирд┐рд░реНрдорд╛рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрдзрд┐рдХ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓/рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЧреНрдп рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдкреАрдЖрдИ рдбреЙрдХреНрд╕ рдмрдирд╛рдирд╛ FRAPI рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ (рдПрдХ рдРрдк рдореЗрдВ рдбреНрд░реЙрдк) рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╡рд╛рд▓ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ "рдЬреИрд╕рд╛ рд╣реИ" рдпрд╛ рдпрджрд┐ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдХреНрдпрд╛ рд╣рдо рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рджрд┐рдорд╛рдЧ рдореЗрдВ, рдпрд╣реА рд╡рд╣ рд╣реИ рдЬреЛ рдЖрд░рдИрдПрд╕рдЯреА рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ :)

рдУрдбрд┐рдиреЛ: рдЬрд╝рд░реВрд░ред рд▓реЗрдХрд┐рди рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк HATEAOS рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рднреА рдЖрдкрдХреЛ рд╣реЗрдбрд░ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдЖрдкрдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдерд┐рддрд┐ рдХреЛрдб рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдлрд┐рд░ рднреА рдпрд╣ рдЬрд╛рдирдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рд╕реНрдерд┐рддрд┐ рдХреЛрдб "рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛" рд╣реИрдВред рдпрд╣ рдПрдкреАрдЖрдИ рдХреА рдЖрдХрд╕реНрдорд┐рдХ рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЕрдЪреНрдЫрд╛ рд╣реИред

рдПрдХ рдФрд░ рд╡рд┐рд╖рдп рдЬрд┐рд╕реЗ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП: рдХреБрдЫ рдЧреНрд░рд╛рд╣рдХ рдкреЗрдбрд╝реЛрдВ рдХреЛ рдорд╛рд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдХрд╛рдЧрдЬ рдХреЗ рдЗрд╕ рдкреГрд╖реНрда рдХреЛ рднрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрд░реНрдмрд╛рдж рди рдХрд░рдирд╛ рдкрдбрд╝реЗ :)

рд╕рд╣рдордд рд╣реИрдВ, рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬрд┐рд╕рд╕реЗ рд╣рдореЗрдВ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд╣ рд╣реИ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рдирд╛, рдЕрдиреНрдпрдерд╛ рд╣рдо рдбрдмреНрд▓реВрдПрд╕рдбреАрдПрд▓ рдХреЛ рджреЛрд╣рд░рд╛рдПрдВрдЧреЗ

рдкреЗрдбрд╝-рд╣рддреНрдпрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдВрдЧреВрдареЗ рдиреАрдЪреЗ :)

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рд╕рдЪреНрдЪреЗ рдЖрд░рдИрдПрд╕рдЯреА рдПрдкреАрдЖрдИ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореАрдбрд┐рдпрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдЙрдирдХреЗ рд╕рдВрдмрдВрдзреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрдВ, рдпреВрдЖрд░рдПрд▓ рдирд╣реАрдВред рдЬреИрд╕реЗ http://kenai.com/projects/suncloudapis/pages/Home , http://amundsen.com/media-types/collection/

рд▓реЗрдХрд┐рди рд╕рд╛рдзрд╛рд░рдг HTTP рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдХрд┐ 80% рд╡реЗрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛, рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред

рд╣рд╛рдВ рд╡реНрд▓рд╛рджрд░, рдпреВрдЖрд░рдЖрдИ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмреБрд░реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдореЗрдВ рдПрдХ рдЖрд░рдИрдПрд╕рдЯреА рдмрдВрдбрд▓ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рддреЛ рд╣рдореЗрдВ рдЙрди рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдПрдХ рдпреВрдЖрд░рдЖрдИ рдЯреЗрдореНрдкрд▓реЗрдЯ рдПрдХ рдПрдкреАрдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реЛрдЧрд╛

http://swagger.wordnik.com/ рд╕реЗ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдВ рд▓реЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ

: +1: рд╕реНрд╡реИрдЧрд░ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдХрдорд╛рд▓ рд▓рдЧ рд░рд╣рд╛ рд╣реИ!

рдПрдХ рд╕рдорд╛рди рдЕрдиреБрднрд╡ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдирд┐рдореНрди рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдкрд╛рд░реНрд╕ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ @apidoc рдпрд╛ рдХреБрдЫ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
  • @apidoc рдЪрд┐рд╣реНрдирд┐рдд рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рдбреЙрдХрдмреНрд▓реЙрдХ рд╕реЗ рд╡рд┐рдзрд┐ рдФрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рд╡рд┐рд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
  • рдкреНрд░рддрд┐ рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреЙрд▓реЛрдВ рдХреЗ рдЗрдирд▓рд╛рдЗрди-рдкрд░реАрдХреНрд╖рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрд╡реИрдЧрд░ рдЬреИрд╕реА рд╕реНрдХреНрд░реАрди рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рдХреНрд╖рдо рд╣реИ рдФрд░ рдЗрд╕ рдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ JSON рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рд╕реНрд╡реИрдЧрд░ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╡рд╣ рдХреБрдЫ рд╡рдЬрди (рдЬрд╛рд╡рд╛) рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ ... рдмрд▓реНрдХрд┐ "рдкрд╕рдВрдж" рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджреЗрдЦреЗрдЧрд╛ред

рд╕рдВрдЧрдд JSON рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред рдореИрдВ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдереЛрдбрд╝рд╛ рдЧрд╣рд░рд╛ рдЦреЛрджреВрдВрдЧрд╛, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рддреНрд╡рд░рд┐рдд 'рдПрди рдЧрдВрджрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╕рдВрднрд╡ рд╣реЛред

@pminnieur рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╣рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╛рди рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХрдо рд╕реЗ рдХрдо рдпрд╣ https://github.com/FriendsOfSymfony/FOSJsRoutingBundle рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ - рдмрд╕ рдХреБрдЫ рдлреИрдВрд╕реА HTML/CSS рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдПрдкреАрдЖрдИ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд░реАрд╕реНрдЯрдлреБрд▓ рдорд╛рд░реНрдЧреЛрдВ рдХрд╛ рдкрд░реНрджрд╛рдлрд╛рд╢ рдХрд░рдирд╛ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрдзрд┐рдХ рд╕реВрдЪрдирд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдПрдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВред

рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рдПрдХ рд╕рдорд░реНрдкрд┐рдд рдмрдВрдбрд▓ рдореЗрдВ рд░рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП FOSRestAPIExplorerBundle)ред рдкреНрд░рд╢реНрди рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдХреЗрд╡рд▓ рд╕реНрд╡реИрдЧрд░ рдПрдкреАрдЖрдИ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВрдЧреЗ (рдЗрд╕рд▓рд┐рдП рд╕реНрд╡реИрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ JSON рдореЗрдВ рдПрдХрддреНрд░рд┐рдд рдФрд░ рдЙрдЬрд╛рдЧрд░ рдХреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдпрд╛ рдХреНрдпрд╛ рд╣рдо рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рднреА рдкреНрд░рджрд╛рди рдХрд░реЗрдВрдЧреЗ?

рдПрдХ рдЕрд▓рдЧ рдмрдВрдбрд▓ рдПрдХ рдЕрдЪреНрдЫреЗ рд╡рд┐рдЪрд╛рд░ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рдЕрдЧрд░ рд╣рдо рдХреЗрд╡рд▓ рд╕реНрд╡реИрдЧрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдмрдВрдбрд▓ рдирд╛рдо рдореЗрдВ рдРрд╕рд╛ рдХрд╣рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд╣рдо рднреА рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЖрдкрдХреА рдкреНрд░реЗрд░рдгрд╛ рдФрд░ рд╕реНрд╡реИрдЧрд░ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рд╕реНрд╡реИрдЧрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреНрд░рд╢реНрди: рдпрд╣ рдЖрдВрддрд░рд┐рдХ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рд╕реНрд╡реИрдЧрд░ JSON рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ URL рдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ ...:D рдЧрдВрднреАрд░рддрд╛ рд╕реЗ, рдореИрдВ рдПрдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдпрджрд┐ рдЖрдк рдХреЛрдИ рдорд╛рд░реНрдЧ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ, рдЖрдк @Expose() рдПрдиреЛрдЯреЗрд╢рди рдирд╣реАрдВ рдЬреЛрдбрд╝реЗрдВрдЧреЗ рдпрд╛ @Expose(false) рдЬреЛрдбрд╝реЗрдВрдЧреЗ - рдРрд╕рд╛ рдХреБрдЫред рдЬреИрд╕реЗ FOSJsRoutingBundle рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯреЗрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдм рдХреБрдЫ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдВ, рдпрд╛ рд╢реНрд╡реЗрддрд╕реВрдЪреА рдХрд╛ рдкрд░реНрджрд╛рдлрд╛рд╢ рдХрд░реЗрдВ)ред рдпрджрд┐ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ "рдпрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реИ рдФрд░ рдпрд╣ рд▓рд┐рдВрдХ рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рд▓рд┐рдП рд╣реИ", рддреЛ рд╣рдо рд╕реБрд░рдХреНрд╖рд╛ рдШрдЯрдХ рд╕рд╣рд┐рдд @Api("public") рдФрд░ @Api("private") рдЬреИрд╕реЗ рдПрдиреЛрдЯреЗрд╢рди рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЖрдк рдЕрд▓рдЧ рдПрдкреАрдЖрдИ рд╕реМрдВрдк рд╕рдХреЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬ (рдФрд░ 'рдЙрдиреНрд╣реЗрдВ' рддрдХ рдкрд╣реБрдВрдЪ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ)ред

рдирд╛рдо рдХреЗ рд▓рд┐рдП: рдореИрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдирд╛рдо рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд╕реНрд╡реИрдЧрд░ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкрд╣рд▓реА рдПрдкреАрдЖрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╕реЗрд╡рд╛ рд╣реЛрдЧреАред рдЕрдЧрд░ рд▓реЛрдЧ рдХреЛрдИ рдЕрдиреНрдп рд╕реЗрд╡рд╛ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╡реЗ рдЗрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдФрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП @odino WADL рд╕рдорд░реНрдерди рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдХрдо рд╕реЗ рдХрдо рдореИрдВ рдПрдХ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рднреА рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рдореБрджреНрджреЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдм рддрдХ рдПрдХ рдЧрд┐рдЯрд╣рдм рднрдВрдбрд╛рд░ рдмрдирд╛рдпрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдкреНрд░рд╢реНрди рдпрд╛ рд╡рд┐рд╖рдпреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ (рдирд╛рдордХрд░рдг рдкрд░ рднреА рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ) ;-)

https://github.com/pminnieur/FOSRestApiExplorerBundle

рдареАрдХ рдЕрдЪреНрдЫрд╛ред рдПрдХ рдмрд╛рд░ рдЪреАрдЬреЗрдВ рдЖрдХрд╛рд░ рд▓реЗрдиреЗ рдХреЗ рдмрд╛рдж .. рд╣рдо рдЗрд╕реЗ FOS рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдХреНрдпрд╛ рдЖрдк "рдбрд┐рд╕реНрдкреНрд▓реЗрд░" рдХреЗ рд░реВрдк рдореЗрдВ https://github.com/wordnik/swagger-ui рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ?

рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ, рд╣рд╛рдБред рд╕реНрд╡реИрдЧрд░-рдпреВрдЖрдИ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рд╕реНрд╡реИрдЧрд░-рд╕реНрдкреЗрдХ рдЕрдиреБрд░реВрдк рдЬреЗрд╕рди рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред

https://github.com/nelmio/NelmioApiDocBundle рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╕рдорд╛рдкрди

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдкреБрд░рд╛рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддрдм рд╕реЗ рдХреБрдЫ рдЪреАрдЬреЗрдВ рдмрджрд▓ рдЧрдИрдВ рдФрд░ рд╕реНрд╡реИрдЧрд░/рдУрдкрдирдкреА рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ/рдмрдВрдбрд▓ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдореБрдЭреЗ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рддреЗрдЬрд╝реА рд╕реЗ рдорд┐рд▓рд╛ред
рдЗрд╕ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдореМрдХрд╛? рдЪреВрдВрдХрд┐ NelmioApiDocBundle рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╕реНрд╡реИрдЧрд░ / OpenApi (рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, RAML, ...?) рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрдлрдиреА рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реЛред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

matrix818181 picture matrix818181  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

timotheemoulin picture timotheemoulin  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MaxBoltik picture MaxBoltik  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

oliver13 picture oliver13  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MaksSlesarenko picture MaksSlesarenko  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ