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

рдЪрд┐рддреНрд░ рдпрд╣рд╛рдБ рд╕реЗ
рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рддреАрди рддрд░реАрдХреЗ рд╣реИрдВ:
- рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдХрд░реЗрдВ, рдпрд╛ рдЙрдирдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ рдЗрди рд▓рд┐рдЦреЗрдВ
- рдмреИрдХрдПрдВрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ, рдПрдХ рдордзреНрдпрд╕реНрде рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░реЗрдВ
- рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдПрдХ HTTP рд╕реЗрд╡рд╛ рдЬреЛрдбрд╝реЗрдВ, рдФрд░ рдЗрд╕реЗ рд╕реАрдзреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░реЗрдВ
рддреАрд╕рд░рд╛ рдЖрдЗрдЯрдо рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рдЖрдкрдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП .NET рдлреНрд░реЗрдорд╡рд░реНрдХ 4 рдХреЗ рддрд╣рдд C # рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд┐рдЦрдХрд░ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЪреВрдВрдХрд┐ рд╣рдо .NET рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╕рдорд╛рдзрд╛рди рдХреЗрд╡рд▓ рд╡рд┐рдВрдбреЛрдЬ (рдПрдХреНрд╕рдкреА рдФрд░ рдирдП) рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ред рд╣рдо рдХреЛрдгреАрдп рдкрд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
1 рдФрд░ 2 рдХреНрдпреЛрдВ рдирд╣реАрдВ?
рдкрд╣рд▓рд╛ рдЖрдЗрдЯрдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрд╣реБрдд рджрд░реНрдж рд▓рд╛рдПрдЧрд╛, рдЖрдкрдХреЛ рдЕрд▓рдЧ рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреНрд▓рдЧ-рдЗрди рдореЗрдВ рд╕рдм рдХреБрдЫ рд╕реЗ рджреВрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░ рднреА, рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдкреНрд▓рдЧ рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдПрдХ рд╕рд░рд▓ рддрд░реАрдХреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рджреВрд╕рд░рд╛ рдмрд┐рдВрджреБ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рди рдХреЗрд╡рд▓ рд╕рд╛рдЗрдЯ рдкрд░, рдмрд▓реНрдХрд┐ рд╕реНрдерд╛рдиреАрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рднреА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рддреЗ рд╕рдордп, рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкреБрди: рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреА, рдЕрдХреНрд╕рд░ рдЙрдиреНрд╣реЗрдВ рдЧрдВрднреАрд░ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдФрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд╕рд╛рде рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрддреА рд╣реИ, рдЖрдкрдХреЛ рдкреНрд░реЙрдХреНрд╕реА рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рднреА рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдмрдВрдж рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдИрдЯреА рд╕реЗ рджреВрд░ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛; рд╣рдо рдЕрдзрд┐рдХ рддрдХрдиреАрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд╛рд░реНрдп рдмрдирд╛рдПрдВрдЧреЗред рдмреЗрд╢рдХ, рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдердорд┐рдХ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдПрдХ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреИрдХреЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред
HTTPS рдХрд╛ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИ?
рдЬрдм рдХреЛрдИ рд╕рд╛рдЗрдЯ HTTPS рд╕реЗ рдЕрдзрд┐рдХ рдЪрд▓рддреА рд╣реИ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ HTTP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдХреНрд░рд┐рдп рд╕рд╛рдордЧреНрд░реА рдХреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЪреАрдЬреЛрдВ рдХреЗ рддрд░реНрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЛ HTTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕реЗ рдмреНрд▓реЙрдХ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдРрд╕рд╛ рдирд╣реАрдВ рдерд╛ред
рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рдВрдбреЛрдЬ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЕрдзреНрдпрдпрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рддреА рд╣реИ:
| рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 65 | рдХреНрд░реЛрдо 72 | IE 11 |
---|
http: // рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ / | тЭМ рдЕрд╡рд░реБрджреНрдз рдорд┐рд╢реНрд░рд┐рдд рд╕рдХреНрд░рд┐рдп рд╕рд╛рдордЧреНрд░реА рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ | тЬУ | Is рддреНрд░реБрдЯрд┐: рдПрдХреНрд╕реЗрд╕ 0x8007005 рд╕реЗ рд╡рдВрдЪрд┐рдд рд╣реИ |
http://127.0.0.1/ | тЬУ | тЬУ | Is рддреНрд░реБрдЯрд┐: рдПрдХреНрд╕реЗрд╕ 0x8007005 рд╕реЗ рд╡рдВрдЪрд┐рдд рд╣реИ |
https: // рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ / | R SEC_ERROR_UNKNOWN_ISSUER | тЬУ | тЬУ |
рдЙрдкрдпреБрдХреНрдд рдкрддреЗ рдкрд░ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп рддрд╛рд▓рд┐рдХрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджрд┐рдЦрд╛рддреА рд╣реИред рдХреНрд░реЛрдорд┐рдпрдо рдЗрдВрдЬрди рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреНрд░реЛрдо рдХреЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдПрдЬ 44 рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ IE 11 рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рдорд╛рди рд╣реИред HTTPS рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдз рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд░реВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд╣реИред Https://127.0.0.1 рдФрд░ https: // рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдорд╛рди рд╣реИ, рд╕рд┐рд░реНрдл 127.0.0.1 рдХреЗ рд▓рд┐рдП рддреЛ рдЖрдкрдХреЛ рдПрдХ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдЖрдИрдкреА рдкрддреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рдмрд┐рдВрджреБ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВред
рдХреНрд░реЛрдо рдореЗрдВ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдХреНрд░реЛрдо рдФрд░ IE рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рд╕реНрдЯреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП HTTPS рднреА рдЙрдирдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреА рджреБрдХрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣рдорд╛рд░реЗ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдФрд░ IE рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ рдирд╛рдо рдФрд░ рдЙрд╕ рдЕрдзрд┐рдХрд╛рд░ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рднреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ 127.0.0.1 рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡реЗ рдЗрд╕реЗ рдХреНрд░реЛрдо рдХреА рддрд░рд╣ рд╣реА рдЬрд╛рдВрдЪ рд╕рдХрддреЗ рдереЗ)ред
рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛: IE HTTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдкреНрд░рдорд╛рдг рдкрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЙрдкрджреНрд░рд╡ рд╣рдо рдЯрд╛рд▓ рдирд╣реАрдВ рд╕рдХрддреЗред
рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рд╕рд╣реА рдПрдХреНрд╕реЗрд╕-рдХрдВрдЯреНрд░реЛрд▓-рдЕрд▓рд╛рдЙрдВрд╕-рдУрд░рд┐рдЬрд┐рди, рдПрдХреНрд╕реЗрд╕-рдХрдВрдЯреНрд░реЛрд▓-рдПрд▓рд╛рдЙрдВрд╕-рдореЗрдердбреНрд╕, рдПрдХреНрд╕реЗрд╕-рдХрдВрдЯреНрд░реЛрд▓-рдПрд▓рд╛рдЙрдВрд╕-рд╣реЗрдбрд░реНрд╕ ( рдХреЙрд░реНрд╕ ) рд╣реЗрдбрд░ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред
рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдг рдкрддреНрд░
рдЖрдк рдЕрдкрдиреЗ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП DNS рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП local.example.com, рдЬреЛ 127.0.0.1 рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд░реЗрдВ, рдЗрд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рд╡рд┐рддрд░рд┐рдд рдХрд░реЗрдВред рдЖрдкрдХреЛ рдЗрд╕ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдкрдпреБрдХреНрдд рд╣реИред рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЛ рднреА рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
IE рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЗрд╕реЗ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдФрд░ рдпрд╣ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред
рдЖрдк рд╕реНрдерд╛рдиреАрдп рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдЯреЛрд░ рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдПрдХ рд░реВрдЯ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдФрд░ рдПрд╕рдПрд╕рдПрд▓ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рддреИрдпрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рджрд┐рдЦрддрд╛ рд╣реИред рдФрд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЛ рд░рджреНрдж рдХрд░рдирд╛ рдпрд╛ рдирд╡реАрдиреАрдХреГрдд рдХрд░рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВрдЧреЗред
C # рдореЗрдВ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдмрдирд╛рдирд╛
.NET рдХреЗ рд▓рд┐рдП, рдПрдХ BouncyCastle рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬреЛ рд╣рдорд╛рд░реА рдЬрд╝рд░реВрд░рдд рдХрд╛ рд╣рд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИред рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕реНрдЯреЛрд░ рдореЗрдВ рдПрдХ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ netsh рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрдирдд рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
netsh http add sslcert ipport=0.0.0.0:{PORT} certhash={certThumbprint}
рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, SslHelper рд╡рд░реНрдЧ рдореЗрдВ RegisterSslOnPort рдкрджреНрдзрддрд┐ рдпрд╣ рдХрд╛рд░реНрдп рдХрд░рддреА рд╣реИред
HTTP рд╕реЗрд╡рд╛ рд╕реА # рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ
рдПрдХ рд╣рд▓реНрдХреЗ HTTP (рдПрд╕) рд╕рд░реНрд╡рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдиреИрдиреНрд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ ред рдиреИрдиреНрд╕реА .NET рдХреЗ рд▓рд┐рдП рдПрдХ рд╣рд▓реНрдХрд╛ рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИ, рдЬреЛ рд╕рд░рд▓ рдФрд░ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣реИрдмреЗ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ ред Nancy.SelfHosting рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо IIS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЪрд▓реЛ рджреЛ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЬреЛрдбрд╝ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рд╕рд╣реА рдХреЛрд░ рд╣реЗрдбрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдБ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЕрдиреНрдпрдерд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣рдорд╛рд░реЗ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
NancyModule public class CalcNancyModule : NancyModule { public CalcNancyModule() {
рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рдиреИрдиреНрд╕реА рдЖрд░рдВрднреАрдХрд░рдг рдЬреЛрдбрд╝реЗрдВ, рдФрд░ рд╣рдо рд▓рдбрд╝рд╛рдИ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред
рдиреИрдиреНрд╕реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ var hostConfigs = new HostConfiguration(); hostConfigs.UrlReservations.CreateAutomatically = true; hostConfigs.RewriteLocalhost = false; var uris = new Uri[] { new Uri($"http://localhost:{HTTPPORT}"), new Uri($"http://127.0.0.1:{HTTPPORT}"), new Uri($"https://localhost:{HTTPSPORT}") }; using (var host = new NancyHost(hostConfigs, uris)) { host.Start(); }
рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рдЖрдкрдХреЛ рдЙрдЪрд┐рдд рдЕрдзрд┐рдХрд╛рд░ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдмрдирд╛рдиреЗ рдФрд░ рд╕реНрдЯреЛрд░ рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрди рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЗ рд▓рд┐рдП, SslHelper рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ CheckOrCreateCert рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рд╡рд┐рдзрд┐ рдЗрд╕ рдХрд╛рдо рдХреЛ рдХрд░рддреА рд╣реИред рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ, SubjectName рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдЗрд╕реЗ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд┐рдзрд┐ рдпрд╣ рдЬрд╛рдВрдЪрддреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рдФрд░ рд╕рд┐рд╕реНрдЯрдо, рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХрдбрд╝реА рдореЗрд╣рдирдд рдФрд░ рд▓рдВрдмреА рджреЗрд░реА рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдореЗрдВ Thread.Sleep (1000) рдЬреЛрдбрд╝реЗрдВред
рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рд╡реЗрдм рдкрд░ рдЬрд╛рдПрдВред
рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡реНрдпрд╡рд╣рд╛рд░ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдХреЗ рд╕рд╛рде рддрд┐рд░рд╕реНрдХреГрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдХрдо рд╕реЗ рдХрдо рджреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ:
рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╣рдореЗрдВ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо IE (рдпрд╛ рдПрдЬ) рдореЗрдВ рд╣реИрдВ - рдПрдЪрдЯреАрдЯреАрдкреАрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрджрд┐ рдирд╣реАрдВ - рдПрдЪрдЯреАрдЯреАрдкреАред рдЖрдк рдЗрд╕реЗ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрд╕ рд╣рдорд╛рд░реЗ рдПрдкреАрдЖрдИ рдХреЗ рдЬреАрдИрдЯреА / рдХреИрд▓реНрдХ рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдпрджрд┐ рдЕрдиреБрд░реЛрдз рд╕рдлрд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд╣рдо рдПрдХ рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣ рд╕рдм рдХреЗрд╡рд▓ рддрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬрдм рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрд╡рдпрдВ HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рдХреЗрд╡рд▓ рд╕рд╣реА CORS рд╣реЗрдбрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдХреЛрдгреАрдп рдЖрд╡реЗрджрди рдореЗрдВ, рдПрдХ рдЗрдВрдЯрд░рдПрдХреНрд╢рди рд╕реЗрд╡рд╛ рд╕реЗрд╡рд╛ рдмрдирд╛рдПрдВ рдЬреЛ рдкрд╣рд▓реЗ рдПрдЪрдЯреАрдЯреАрдкреАрдПрд╕ рджреНрд╡рд╛рд░рд╛, рдлрд┐рд░ рдПрдЪрдЯреАрдЯреАрдкреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдиреАрдп рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдЧрд╛ред рдЪреЗрдХ рдХреЛ рдЪреЗрдХ рдПрд╡рд▓реЗрдмрд┐рд▓рд┐рдЯреА рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЪреЗрдХ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЙрдкрд▓рдмреНрдз рд╣реЛрддрд╛ рд╣реИ, рдЬрдм рд╢реБрд░реБрдЖрддреА рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдк рдмрд┐рд╣реЗрд╡рд┐рдпрд░рд╕реБрдмрдЬреЗрдХреНрдЯ рдХреЗ рдЙрдкрд▓рдмреНрдз $ рдЪрд░ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рдЬрд╛рддреА рд╣реИред
рд╣рдо AppComponent рдШрдЯрдХ рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рдЖрдк "рдЧрдгрдирд╛" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди GET / Calc / Add? Num1 = {num1} & num2 = {num2} рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИред рдЙрддреНрддрд░ рдпрд╛ рддреНрд░реБрдЯрд┐ рдкрд░рд┐рдгрд╛рдо рдлрд╝реАрд▓реНрдб рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИред
рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ HTTPS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЖрдк рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдиреЛрдЯрд┐рд╕ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рдбреЛрдореЗрди рдПрдХ рд╣реА рд╣реЛрдЧрд╛ - рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдЕрд▓рдЧ рдбреЛрдореЗрди рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдпрдерд╛рд╕рдВрднрд╡ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рдХрд╛рдо рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реЗрд╡рд╛ https://stackblitz.com рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реЗрдм рдЖрдИрдбреАрдИ рд╣реИ рдФрд░ рди рдХреЗрд╡рд▓ VSCode рдХреЗ рд╕реНрд╡рд╛рдж рдХреЗ рд╕рд╛рдеред рддреИрдпрд╛рд░ рдЖрд╡реЗрджрди рд▓рд┐рдВрдХ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ ред
рдФрд░ рдЖрдк рдпрд╣рд╛рдВ рдкрд░ рдХреЛрдб рдЦреЛрдж рд╕рдХрддреЗ рд╣реИрдВ ред
рд╕реНрдЯреИрдХрдмреНрд▓рд┐рдЯреНрдЬрд╝ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрдВрддрдГрдХреНрд░рд┐рдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЖрдкрдХреЛ рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдирд┐рдЬреА рдЯреИрдм рдореЗрдВ рдпрд╛ https://angular-pfwfrm.stackblitz.io рдкрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдХреИрд╕реЗ рдХрд░реЗрдВ рдХреЛрд╢рд┐рд╢?
рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрдЯреИрдВрдЧрдмреНрд▓рд┐рдЯреНрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╕ рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ https://angular-pfwfrm.stackblitz.io ред
рдЖрдк рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдПрдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
git clone https://github.com/jdtcn/InteractionExample.git cd InteractionExample
AngularWebApp рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЖрдкрдХреЛ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
npm install ng serve --ssl true
рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди https: // localhost: 4200 / рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛
рд╕реНрдерд╛рдиреАрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдпрд╛ рддреЛ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рджреГрд╢реНрдп CsClientApp.sln рд╕реЗ CsClientApp рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ) Visual Studio рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рд░рди рдХрд░реЗрдВ, рдпрд╛ LINQPad рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдпрджрд┐ рдЖрдк рдПрдХ .NET рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдФрд░ LINQPad рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ, рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдЪреАрдЬ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд▓рд┐рдиреНрдХрдкреИрдб рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдкрд╣рд▓реА рдмрд╛рд░ рдЖрдкрдХреЛ рд▓рд┐рдиреНрдХрдкреИрдб рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ), рдФрд░ рдиреМрдЧрдЯ рдкреИрдХреЗрдЬ рдмрд╛рдЙрдВрд╕реАрдХреИрд╕реНрдЯрд▓, рдиреИрдиреНрд╕реА, рдиреИрдиреНрд╕реА.рд╣реЛрд╕реНрдЯрд┐рдВрдЧред рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рдлрд┐рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдВред рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдк рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ "рдЧрдгрдирд╛ рдХрд░реЗрдВ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдСрдкрд░реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕реБрд░рдХреНрд╖рд╛
рдпрд╣ рд╕рд╣реА рдорд╛рдпрдиреЗ рдореЗрдВ рдХреЙрд░реНрд╕ рд╣реЗрдбрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рддрд╛рдХрд┐ рдЕрдиреНрдп рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдЦрд▓рдирд╛рдпрдХ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рд╕рдХреЗрдВред рдпрджрд┐ рдЦрд▓рдирд╛рдпрдХ рдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдХреЛрд░реНрд╕ рдЪреЗрдХ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ, рддреЛ рд╡рд╣ рд╡рд╣ рд╕рдм рдХреБрдЫ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ рдЬреЛ рд╣рдорд╛рд░рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдиреНрдпреВрдирддрдо рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдпрджрд┐ рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд╕рд░рд▓ рдХрд╛рд░реНрдп рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдмреИрд╕рд╛рдЦреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдиреЗ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ред рдмреЗрд╢рдХ, рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдЗрдиреЛрд╕реЗрдЯрдЕрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдкрд░ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реИред рд╕рд╛рде рд╣реА, рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, .NET 4 рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдФрд░ рдпрджрд┐ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ рддреЛ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред
рд╡рд┐рд░реБрд╕реНрддреЛрдЯрд▓ рдореЗрдВ рдХреЛрдИ рднреА рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛! рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдЗрдиреЛрд╕реЗрдЯрд╕реЗрдЯ рдореЗрдВ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреИрдХреЗрдЬ рдХреЛ рдЕрд╕реЗрдВрдмрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдерд░реНрдб-рд░реЗрдЯ рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рдХрд╛ рдПрдХ рдЬреЛрдбрд╝рд╛ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдХреЛрдб рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рд╕реНрд╡рдд: рдЕрджреНрдпрддрди рдкрд░реНрджреЗ рдХреЗ рдкреАрдЫреЗ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рд╢рд╛рдирджрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдкрдбреЗрдЯ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рд▓рд╣рд░реА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИред рдЬрдм рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рддреЛ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рд╣рдорд╛рд░реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рд▓рд╣рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИред
рдирдореВрдирд╛ рдХреЛрдб GitHub рдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ ред
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!