рдХреНрд░реЙрд╕-рдбреЛрдореЗрди "рдЕрдЬрд╛рдХреНрд╕" - рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди

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

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╣реИ
  http://name.my 
рдФрд░ рд╣рдо рдЗрд╕ рдкрд░ ajax рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓реЗрдЧрд╛?
  1. рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз
      http://name.my/ajax.php 
    (рдореИрдВ рд╣рд░ рдЬрдЧрд╣ php рд▓рд┐рдЦреВрдВрдЧрд╛ рддрд╛рдХрд┐ рд╣рд░ рдХреЛрдИ рдЖрд░рд╛рдорджрд╛рдпрдХ рд╣реЛ, рдореИрдВ рдЦреБрдж рдЬрд╛рд╡рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реВрдВрдЧрд╛) рд╣рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдЬрд╡рд╛рдм рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛
  2. рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз
      http://google.com/ 
    рдкрд╣реБрдБрдЪ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛
  3. рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ
      https://name.my/ajax.php 
    рднреА рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ
  4.   http://name.my:81/ajax.php 
    рдФрд░ рдкрддреЗ рдореЗрдВ рдПрдХ рдФрд░ рдмрдВрджрд░рдЧрд╛рд╣ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдХреЛ рдмрд░реНрдмрд╛рдж рдХрд░ рджреЗрдЧрд╛

рдХрд╛рд░реНрдп: рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд░реЙрд╕-рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬреЗрдВ рдЬреЛ рдХрд╛рдо рдХрд░реЗрдЧрд╛: ie7 +, рдУрдкреЗрд░рд╛ 9.6+, ff 3+, рдХреНрд░реЛрдо, рд╕рдлрд╛рд░реАред рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪреВрдВрдХрд┐ рдореБрдЭреЗ http рд╕реЗ https рддрдХ рд╕рдВрдкрд░реНрдХ рдХрд░рдирд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ "рдорд┐рд╢реНрд░рд┐рдд рд╕рд╛рдордЧреНрд░реА" рд╕рдВрджреЗрд╢ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
JQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕рдореЗрдВ рдХреЛрдИ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рдХреНрд╡реЗрд░реА рддрдВрддреНрд░ рдирд╣реАрдВ рд╣реИ (1.5 рдореЗрдВ jsonp рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рджрд┐рдЦрд╛рдИ рджреА, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ), рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреА рдЦреЛрдЬ рдиреЗ рднреА рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджрд┐рдПред рдЗрд╕рд▓рд┐рдП, рд╕рд░рд▓ рд░рд╛рд╕реНрддреЛрдВ рд╕реЗ рдЯреВрдЯрдирд╛ (рдЬреЛ, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛), рдореИрдВ Google рдкрд░ рдЧрдпрд╛, рдЬреЛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдЙрддреНрддрд░ рднреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ - рдореБрдЭреЗ рдЙрди рд╡рд┐рдзрд┐рдпреЛрдВ рдпрд╛ рдЪреАрдЬреЛрдВ рдХрд╛ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдорд┐рд▓рд╛, рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рдереАрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреЛрдЬреЛ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рднреА js рдмрджрд▓рддреЗ рд╣реБрдП рд╕рд╛рдЗрдЯ рдмрд╣реБрдд рд╢реНрд░рдо рдЧрд╣рди рд╣реИ)ред
рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
  1. postMessage
  2. JSONP
  3. CORS
  4. document.domain рд╡рд┐рдзрд┐рдпрд╛рдБ
  5. window.name рдкрд░рд┐рд╡рд╣рди
  6. рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкреНрд░реЙрдХреНрд╕реА
  7. CRAZY IFRAME STUFF
  8. рдлрд╝реНрд▓реИрд╢

рд╢реБрд░реБрдЖрддреА, рдЬрдм рдореИрдВ рдЗрд╕ рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рднрдпрднреАрдд рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛ (рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдореИрдВ рдЙрддреНрд╕рд╛рд╣реА рднреА рдирд╣реАрдВ рдерд╛)ред рддреЛ рд╣рдорд╛рд░рд╛ рдХрд╛рдо рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдЦреЛрдЬрдирд╛ рд╣реИ, рдЬреЛ рд╕рд╛рдЗрдЯ рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдмреИрд╕рд╛рдЦреА рдирд╣реАрдВ рдмрдирд╛рдПрдЧрд╛ред
1) рдкреЛрд╕реНрдЯрдореИрд╕реЗрдЬ HTML5 рдорд╛рдирдХ рдХреА рдПрдХ рдирдИ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рдВрдбреЛ рд╕реЗ рджреВрд╕рд░реА рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреА рд╕рд╛рдордЧреНрд░реА рд╡рд┐рднрд┐рдиреНрди рдбреЛрдореЗрди рд╕реЗ рд╣реЛ рд╕рдХрддреА рд╣реИред TargetWindow.postMessage (рд╕рдВрджреЗрд╢, targetOrigin) рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди; targetWindow - рд╡рд┐рдВрдбреЛ рдЬрд╣рд╛рдВ рд╣рдо рдЕрдиреБрд░реЛрдз, рд╕рдВрджреЗрд╢ - рд╕рдВрджреЗрд╢ рднреЗрдЬрддреЗ рд╣реИрдВ, рд▓рдХреНрд╖реНрдп рдбреЛрдореЗрди рдХреЛ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЦреЛрд▓реЗ рдЬрд╛рдиреЗ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ, рдбреЛрдореЗрди рдХреЗ рд░реВрдк рдореЗрдВ "*" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдФрд░ рдХреЛрдИ рднреА рдбреЛрдореЗрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
2) JSONP (JSON рдкреИрдбрд┐рдВрдЧ) рдпрд╛ "JSON рдкреИрдбреЗрдб" рдПрдХ JSON рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╣реИ рдЬрдм рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо рдЗрдирдкреБрдЯ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЕрдиреНрдп рдбреЛрдореЗрди рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд░рд┐рдгрд╛рдо рдПрдХ рдЬреЗрд╕рди рд░рд┐рд╕реНрдкреЙрдиреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдПрдЧрд╛, рдЬрд┐рд╕реЗ рд╣рдо рдкреНрд░реЛрд╕реЗрд╕ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, jsonp рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ: рд╕рд░реНрд╡рд░ рдХреЛ рдлрдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо рджреЗрддреЗ рд╣реБрдП, рд╣рдореЗрдВ рд░рд┐рд╕реНрдкреЙрдиреНрд╕ рдореЗрдВ рдирдВрдЧреЗ рдбреЗрдЯрд╛ рдирд╣реАрдВ рдорд┐рд▓рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди parseResponse ({"рдкреЗрдкрд░"): "рдП 4", "рдЧрдгрдирд╛": 5}), рдЬреЛ рдкрд╛рд░реНрд╕рдкрд░реНрд╕рди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ред
3) CORS рдПрдХ рдмрдбрд╝рд╛ рд╡рд┐рд╖рдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ wels рдХреЗ рд▓рд┐рдП w3c рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдХреМрди рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред XMLHTTPRequest 2 рдПрдХ рдирдпрд╛ рдЕрдиреБрд░реЛрдз рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╣реИ, рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдПрдХ рдирд┐рдпрдорд┐рдд XMLHTTPRequest (рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ XDomainRequest рд╣реИ) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд http рд╣реЗрдбрд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ:
рдПрдХреНрд╕реЗрд╕-рдХрдВрдЯреНрд░реЛрд▓-рдЕрдиреБрдорддрд┐-рдЙрддреНрдкрддреНрддрд┐ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдХрд┐рди рдбреЛрдореЗрди рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред
рдкреНрд░рд╡реЗрд╢-рдирд┐рдпрдВрддреНрд░рдг-рдЕрдиреБрдорддрд┐-рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдЕрдиреБрд░реЛрдз рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдкреНрд░рд╡реЗрд╢-рдирд┐рдпрдВрддреНрд░рдг-рдЕрдиреБрдорддрд┐-рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓: "рдПрдХреНрд╕реЗрд╕-рдХрдВрдЯреНрд░реЛрд▓-рдЕрдиреБрдорддрд┐-рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕" ":" рд╕рддреНрдп рд╕рддреНрдп:% x74.72.75.65;) "рд╕рд╣реА, рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡; )
рдЕрднрд┐рдЧрдо-рдирд┐рдпрдВрддреНрд░рдг-рдЕрдзрд┐рдХрддрдо-рдЖрдпреБ - рдХрдм рддрдХ рдкрд░рд┐рдгрд╛рдо рдХреИрд╢ рд╣реЛрдВрдЧреЗред
рдЖрдк рдЙрдкрд▓рдмреНрдз рддрд░реАрдХреЛрдВ (GET, POST) рдХреЛ рднреА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рд╕рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реЗрдбрд░ рдлрд╝реАрд▓реНрдб рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рд╡рд┐рдзрд┐ рдХреА рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЬреЛ IE рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - XDomainRequest, рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ IE рдЕрдкрдиреЗ рдкреНрд░рджрд░реНрд╢рдиреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рдЖрдкрдХреЛ http рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реЗ https рддрдХ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЗрд╡рд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде https) http), рд▓реЗрдХрд┐рди рд╡рд╣ рд╣реИред
4) document.domain рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ рдпрджрд┐ рд╣рдо рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реБрдкрд░рдбреЛрдореЗрди рдкрд░ 2 рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╡рд╣ рд╣реИ test1.name.my рдФрд░ test2.name.myред рдЗрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рд╛рдорд╛рдиреНрдп рдЕрдиреБрд░реЛрдз рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдПрдХ рдбреЛрдореЗрди рд╕рдВрдкрддреНрддрд┐ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рджреЛрдиреЛрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП name.my рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ iframe рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрд╡рд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
5) window.name рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ - рдЗрд╕рдореЗрдВ рд╡рд┐рдВрдбреЛ рдХреА рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЗ рдирд╛рдо рдХреЛ рдмрджрд▓рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдорд╛рд░реЗ рдХреНрд░рдордмрджреНрдз рдбреЗрдЯрд╛ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
6) рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкреНрд░реЙрдХреНрд╕реА - рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рд╕рд░реНрд╡рд░ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рдкреНрд░реЙрдХреНрд╕реА рдХрд░рдирд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, name.my рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, name.my/proxy/name2.my/test.html рдЬреИрд╕реЗ рд╡рд┐рд╢реЗрд╖ URL рдХреЗ рд▓рд┐рдП, рдФрд░ name.my рд╕рд░реНрд╡рд░ рдЗрд╕реЗ name2.my/test.html рдкрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ ред
рдЫрд╡рд┐ 7) CRAZY IFRAME STUFF - рд╡рд┐рдзрд┐ рдХрд╛ рд╕рд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ iframes, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЛрдореЗрди рдкрд░ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдкрддреЗ рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмрджрд▓рдХрд░ рд╕рдВрд╡рд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ "#" рдХреЗ рдмрд╛рдж рдкрддреЗ рдореЗрдВ рд╣реИ) # рдЦрдВрдб рдХреЗ рд▓рдЧрд╛рддрд╛рд░ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдПрдХ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рджреЛрдиреЛрдВ рджрд┐рд╢рд╛рдУрдВ рдореЗрдВ рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдЦрдВрдб рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдкрд╛рда рд╣реИ, рддреЛ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдХреЗ рд▓рд┐рдП рд╕рднреА рдбреЗрдЯрд╛ (рдбреА) рдХреНрд░рдордмрджреНрдз рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреН, JSON рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ + рдЖрдкрдХреЛ 2 iframes рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рджреГрд╢реНрдпрдорд╛рди рд╡рд┐рдВрдбреЛ рдХреЗ рдкрддреЗ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рди рдХрд░реЗрдВред
8) рдлреНрд▓реИрд╢ - рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдлреНрд▓реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдПрдХ рдЕрд▓рдЧ рд╡рд┐рд╖рдп, рд╕рднреА рд╕реВрдХреНрд╖реНрдорддрд╛рдПрдВ рдЬреЛ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рднреА рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВ)
рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЕрджреНрднреБрдд рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓реА ред рд╕рдмрд╕реЗ рд╕реНрд╡рд╛рджрд┐рд╖реНрдЯ рдЪреАрдЬ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╡рд┐рдзрд┐ рд╣реИ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдЗрд╕рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдФрд░ рд╕рдмрд╕реЗ рдЖрдзреБрдирд┐рдХ рд╡рд┐рдзрд┐ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдкреЛрд╕реНрдЯрдореИрд╕реЗрдЬ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП, # рд░рд╛рд╢рд┐ рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рдЕрдЬрд╛рдХреНрд╕ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрд╛рддрдЪреАрдд рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реЛрдЧреАред
рдЗрд╕рд▓рд┐рдП, рдореИрдВ easyxdm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдРрдЬреИрдХреНрд╕ рдЕрдиреБрд░реЛрдз рд▓рд╛рдЧреВ рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░реВрдБрдЧрд╛ред
рд╣рдо рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЙрдХреНрд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ:
     var xhr = new easyXDM.Rpc ({
         рджреВрд░рд╕реНрде: "http://name.my/cors/index.html" // рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдкрде
     } {
         рд░рд┐рдореЛрдЯ: {
             рдирд┐рд╡реЗрджрди: {} 
         }
     });


easyXDM рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕реНрдерд┐рд░ рд╡рд░реНрдЧ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рд┐рдВрдЧрд▓рдЯрди рдкреИрдЯрд░реНрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
рд╣реЗрд▓рдореЗрдЯ рд╕реНрд╡рдпрдВ рдЕрдиреБрд░реЛрдз:
 xhr.request (
     {
         url: "pathRelativeToRemote / getrest /", // рд╣рдорд╛рд░реЗ рдЕрдиреБрд░реЛрдз рдХрд╛ рдкрддрд╛
         рд╡рд┐рдзрд┐: "рдкреЛрд╕реНрдЯ",
         рдбреЗрдЯрд╛: {рдлреВ: "рдмрд╛рд░"}
     }, рдлрд╝рдВрдХреНрд╢рди (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛) {// рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди
         рд╕рддрд░реНрдХрддрд╛ (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛.рд╕реНрдЯреИрдЯрд╕);
         рд╕рддрд░реНрдХрддрд╛ (response.data);
     }
 );


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

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

рдЕрдЧрд▓рд╛, рд╣рдо рджреВрд░рд╕реНрде рддрд░реАрдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЕрдм рд╡рд╣рд╛рдВ рдПрдХ рдЕрдиреБрд░реЛрдз рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдлрд╝рд╛рдЗрд▓ name.my/cors/index.html рдореЗрдВ рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдВрд░рдЪрдирд╛ рднреА рдмрдирд╛рдИ рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП)
Xhr.request рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ, рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЙрдХреНрд╕реА рдлрд╝рд╛рдЗрд▓ name.my/cors/index.html рдкрд░ рдПрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬрддреЗ рд╣реИрдВ , рдЬреЛ url рдкрд░ рдЦрдЯрдЦрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдбреЗрдЯрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп ajax рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИ (рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЙрддреНрддрд░ рдХреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдХрд░)ред рд╣рдорд╛рд░реЗ рдореЗрдЬрдмрд╛рди рдХреЛ рдЬрд╣рд╛рдВ рдХреЙрд▓рдмреИрдХ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдкрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИред
рд╣рдо рдлрд╝рд╛рдЗрд▓ name.my/cors/index.html рдкрд░ рдереЛрдбрд╝рд╛ рд╕реНрдкрд░реНрд╢ рдХрд░реЗрдВрдЧреЗ; рдпрд╣ рд╣рдорд╛рд░реЗ рдЕрдиреБрд░реЛрдз рдХрд╛ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдбреЗрдЯрд╛ рдХреЗ рд╡рд╛рдкрд╕реА рдкрд░рд┐рд╡рд╣рди рдФрд░ рд░рд┐рд╕реЗрдкреНрд╢рди рдХрд╛ рдЖрдпреЛрдЬрди рдХрд░рддрд╛ рд╣реИред рджреВрд╕рд░реЗ, рдЙрд╕рдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрджреНрднреБрдд рд░реЛрдЯреА рд╣реИ - рд╡рд╣ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЙрд░реНрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ:
var useAccessControl = true; // (рд╕рдЪреНрдЪреЗ) рдпрд╛ рдирд┐рд╖рд┐рджреНрдз (рдЭреВрдареЗ) рд╕рд░реНрд╡рд░ рд╕реЗ рд╣реЗрдбрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ (рддрд╛рдХрд┐ рд╕рд░реНрд╡рд░ рдЧрд▓рддреА рд╕реЗ рдХрд┐рд╕реА рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдбреЛрдореЗрди рдХреЛ рдбреЗрдЯрд╛ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рди рджреЗ)
var alwaysTrustedOrigins = [(/\.?easyxdm\.net/), (/ xdm1 /)]; // рдЕрдиреБрдордд рд╕рд░реНрд╡рд░ рдХреА рд╕реВрдЪреА
var рд░рд┐рдореЛрдЯ рдПрдХ рдЖрд╕рд╛рди XDM рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрдВ рджреВрд░рд╕реНрде рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдФрд░ рдПрдХ рдЫреЛрдЯрд╛ "рд▓рд╛рдЗрдмреНрд░реЗрд░реА" json2.js рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рднреА рди рднреВрд▓реЗрдВ, рдЬреЛ рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП, рдПрдХ JSON рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ easyXDM рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬрдмрдХрд┐ easyXDM рдЖрдкрдХреЛ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдмрдирд╛рдиреЗ рдФрд░ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЧреБрдЬрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдореБрдЭреЗ рдмрд╣реБрдд рджреБрд░реНрд▓рдн рдЖрд╡рд╢реНрдпрдХрддрд╛ рд▓рдЧрддреА рд╣реИ)ред

рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдЬрд╛рдХреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд░реВрдкреЛрдВ рдХреЛ рднреЗрдЬрдиреЗ рдХрд╛ рдХрд╛рдо рдерд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЙрдкрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рдЬреЛ рдХрд┐ рдЕрдЬрд╛рдХреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд░реВрдк рдХреЛ рдХреНрд░рдордмрджреНрдз рдФрд░ рднреЗрдЬрддрд╛ рд╣реЛред рд╕рдорд╛рдзрд╛рди jQuery рдлреЙрд░реНрдо рдкреНрд▓рдЧрдЗрди рдХреЗ рдЪреЗрд╣рд░реЗ рдореЗрдВ рддреБрд░рдВрдд рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдкреНрд▓рдЧрдЗрди jq рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдФрд░ рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрдЬрд╛рдХреНрд╕ рд╣реИрдВрдбрд▓рд░ рдХреЗ рд░реВрдк рдореЗрдВ jQuery рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛ рдкреНрд▓рдЧрдЗрди рдореЗрдВ рд╣рдорд╛рд░реЗ рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рдЕрдиреБрд░реЛрдз рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рджреЗ рджреВрдБрдЧрд╛ред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ html рдлреЙрд░реНрдо рд╣реИ (рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛):
  <form action = "name2.my" id = "myform" рд╡рд┐рдзрд┐ = "POST"> ... </ form> 

рд╣рдо рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╡рд╕реНрддреБ рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗ:
 crossAjax = рдирдпрд╛ рдЖрд╕рд╛рди XDM.Rpc ({
              рд░рд┐рдореЛрдЯ: 'name2.my/cors', // рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рд╣рдорд╛рд░рд╛ рдкреНрд░рджрд╛рддрд╛
              swf: 'name.my/easyxdm.swf'
	 } {
              рд░рд┐рдореЛрдЯ: {
              рдирд┐рд╡реЗрджрди: {} 
	 }
 });


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд▓рдЧ-рдЗрди рдХрдиреЗрдХреНрд╢рди рдХреЛрдб рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдлреЙрд░реНрдо рдлрд╝реАрд▓реНрдб рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреНрд░рдордмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЬрд┐рд╕ рдпреВрдЖрд░рдПрд▓ рдХреЛ рд╣рдо рднреЗрдЬрддреЗ рд╣реИрдВ рд╡рд╣ рдлреЙрд░реНрдо рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╕реЗ рд╣реА рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреИрд╕реЗ рд╡рд┐рдзрд┐)
 $ ('# myform')ред ajaxForm ({
     рдкрд╣рд▓реЗ рд╕реЗ рдмрддрд╛рдПрдВ:  
     рд╕рдлрд▓рддрд╛: showResponse
 });


рдпрд╣ рдПрдХ рд╡рд┐рдзрд┐ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдкрд░рд┐рдгрд╛рдо рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддреЗ рд╣реИрдВ; рд╣рдо рдЗрд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдЫреВрддреЗ рд╣реИрдВ:
 showResponse = function (responseText, statusText, xhr, form) { 
     рдпрд╣рд╛рдБ рд╣рдо рдЕрдкрдиреЗ рдЙрддреНрддрд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
 }


рд▓реЗрдХрд┐рди рдореБрдЦреНрдп рдлрд╝реЛрдХрд╕ рдкрд╣рд▓реЗ рд╣реА рд╣реЛрдЧрд╛, рд╕реЛрд╕рд╛рдЗрдЯреА рдореЗрдВ, рдлреЙрд░реНрдо рд╕рдмрдорд┐рдЯ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдБ рд╣рдо рджреЛрдиреЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдЧреЗ рднреЗрдЬрдиреЗ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдП):
 рдкреНрд░реАрд╡реНрдпреВ рд╕рдорд┐рдЯ = рдлрдВрдХреНрд╢рди (рдЧрд┐рд░рдлреНрддрд╛рд░реА, рдлреЙрд░реНрдо, рд╡рд┐рдХрд▓реНрдк) {
     рдпрджрд┐ (options.url.indexOf (рд╕реНрдерд╛рди.рд╣реЛрд╕реНрдЯ) <0) {// рдпрджрд┐ рд╣реЛрд╕реНрдЯ рджреВрд░рд╕реНрде рд╣реИ рддреЛ рд╣рдорд╛рд░реА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
         var json = {};
         рдХреЗ рд▓рд┐рдП (var i = 0; i <arr.length; i ++) {// рдХреНрд░рдордмрджреНрдз рд░реВрдк рдбреЗрдЯрд╛ рдХреЛ рд╣рдорд╛рд░реЗ рдХреНрд░рдорд╛рдВрдХрди рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп js рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВ (рдкреНрд░рдкрддреНрд░ рд╕реНрд╡рдпрдВ рдЙрдиреНрд╣реЗрдВ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рддрд░реАрдХреЗ рд╕реЗ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ)
             json [arr [i] .name] = arrest [i] .value;
         }
         crossAjax.request ({// рд╣реЗрд▓рдореЗрдЯ рдХреНрд░реЙрд╕ рдбреЛрдореЗрди рдЕрдиреБрд░реЛрдз, рд╣рдорд╛рд░реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ
                 url: options.url,
                 рд╡рд┐рдзрд┐: "рдкреЛрд╕реНрдЯ",
                 рдбреЗрдЯрд╛: json
             }, рдлрд╝рдВрдХреНрд╢рди (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛) {
                 рд╕реНрд╡рд┐рдЪ (response.status) {// рдЙрддреНрддрд░ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ
                     рдорд╛рдорд▓рд╛ 200:
                         showResponse (JSON.parse (response.data), response.status, arr, form)
                         рддреЛрдбрд╝;
                     рдбрд┐рдлрд╝реЙрд▓реНрдЯ:
                         рдЪреЗрддрд╛рд╡рдиреА ("рддреНрд░реБрдЯрд┐:" + рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛.рд╕реНрдЯреИрдЯрд╕);
                         рддреЛрдбрд╝;
            }
         });
         рдЭреВрдареЗ рд▓реМрдЯрдирд╛;  // jj рд╕реЗ рджреЗрд╢реА рдПрдЬреИрдХреНрд╕ рдЕрдиреБрд░реЛрдз рдХреЛ рд░реЛрдХреЗрдВ
     }
 } 


рдРрд╕рд╛ рдХреБрдЫ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдХрд╛рдо рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкрд░ рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ "рд╣рдмрдкреНрд░реЛрд╕реНрдЯ" рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛ред
рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реА

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


All Articles