рдпрд╛ рдорд╣рд┐рдиреНрдпрд╛рдЪреНрдпрд╛ рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рд╣реЕрдХрд░ рдиреНрдпреВрдЬ рд╡рд░
/
рдорд▓рд╛ IMAP рдмрджреНрджрд▓ рдХрд╛рдп рдЖрд╡рдбрд▓реЗ рдирд╛рд╣реА
рдкреНрд░реЛрдЯреЛрдХреЙрд▓
рджреБрд╕рд░реА рд╕рдорд╕реНрдпрд╛ рд░рд╣рджрд╛рд░реАрдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ. IMAP рд╕рд╣, рдИрдореЗрд▓ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд рдЖрдгрд┐ рд╡реЗрд│реЛрд╡реЗрд│реА рд╕реНрдерд╛рдирд┐рдХ рдХреНрд▓рд╛рдпрдВрдЯрд╕рд╣ рд╕рдордХреНрд░рдорд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. рдХрд╛рд╣реА рдХрд╛рд░рдгрд╛рд╕реНрддрд╡ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╡рд░реАрд▓ рдХреЙрдкреА рдЦрд░рд╛рдм рдЭрд╛рд▓реНрдпрд╛рд╕, рд╕рд░реНрд╡ рдореЗрд▓ рдкреБрдиреНрд╣рд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрддреАрд▓. рдЖрдзреБрдирд┐рдХ рдЬрдЧрд╛рдд, рдЬреЗрд╡реНрд╣рд╛ рд╣рдЬрд╛рд░реЛ рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рд╕рд░реНрд╡реНрд╣рд░рд╢реА рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд, рддреЗрд╡реНрд╣рд╛ рдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рдореБрд│реЗ рд░рд╣рджрд╛рд░реА рдЖрдгрд┐ рд╕рдВрдЧрдгрдХреАрдп рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рд╡рд╛рдврддреЛ.
рдЕрдбрдЪрдгреА рдХреЗрд╡рд│ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдордзреНрдпреЗрдЪ рдЙрджреНрднрд╡рдд рдирд╛рд╣реАрдд, рддрд░ рддреНрдпрд╛рд╕реЛрдмрдд рдХрд╛рдо рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдИрдореЗрд▓ рдХреНрд▓рд╛рдпрдВрдЯрдордзреНрдпреЗрд╣реА рдпреЗрддрд╛рдд. рддреНрдпрд╛рдЪреНрдпрд╛ рдирд┐рд░реНрдорд┐рддреАрдкрд╛рд╕реВрди, IMAP рдЕрдиреЗрдХ рд╡реЗрд│рд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡рд░реНрддрдирд╛рдВрдЪреНрдпрд╛ рдЕрдзреАрди рдЖрд╣реЗ - рд╡рд░реНрддрдорд╛рди рдЖрд╡реГрддреНрддреА рдЖрдЬ IMAP4 рдЖрд╣реЗ. рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рддреНрдпрд╛рд╕рд╛рдареА рдЕрдиреЗрдХ рдкрд░реНрдпрд╛рдпреА рд╡рд┐рд╕реНрддрд╛рд░ рдЖрд╣реЗрдд - рдиреЗрдЯрд╡рд░реНрдХрд╡рд░
рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рдмрд░реНтАНрдпрд╛рдЪ рдХрдВрдкрдиреНрдпрд╛ рддреНрдпрд╛рдВрдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ рдорд╛рд▓рдХреАрдЪреЗ рдЙрдкрд╛рдп рдСрдлрд░ рдХрд░рддрд╛рдд рдЬреЗ IMAP рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреЗ рд╕реЛрдкреЗ рдХрд░рддрд╛рдд рдХрд┐рдВрд╡рд╛ рддреЗ рдмрджрд▓рддрд╛рдд:
"рдпрд╛рд╢рд┐рд╡рд╛рдп, рдЖрдзреБрдирд┐рдХ рдИрдореЗрд▓ рдХреНрд▓рд╛рдпрдВрдЯрдиреЗ рдХреЗрд╡рд│ рд╕рдВрджреЗрд╢ рдлреЙрд░рд╡рд░реНрдб рдХрд░реВ рдирдпреЗ, рдкрд░рдВрддреБ рд╕рдВрдкрд░реНрдХрд╛рдВрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕ рдЖрдгрд┐ рдХреЕрд▓реЗрдВрдбрд░рд╕рд╣ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рд╛рд╡реЗ," IaaS рдкреНрд░рджрд╛рддреНрдпрд╛рдЪреЗ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдореБрдЦ рд╕рд░реНрдЧреЗрдИ рдмреЗрд▓реНрдХрд┐рди рдореНрд╣рдгрддрд╛рдд.
1Cloud.ru . тАФ рдЖрдЬ, рддреГрддреАрдп-рдкрдХреНрд╖ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЖрд╡рдбрддрд╛рддрдПрд▓рдбреАрдПрдкреА ,рдХрд╛рд░реНрдбрдбреАрдПрд╡реНрд╣реА ╨╕рдХреЕрд▓рдбреАрдПрд╡реНрд╣реА . рд╣рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрди рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдиреЗрдЯрд╡рд░реНрдХрдордзреАрд▓ рдлрд╛рдпрд░рд╡реЙрд▓рдЪреНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд▓рд╛ рдЧреБрдВрддрд╛рдЧреБрдВрддреАрдЪрд╛ рдмрдирд╡рддреЛ рдЖрдгрд┐ рд╕рд╛рдпрдмрд░ рд╣рд▓реНрд▓реНрдпрд╛рдВрд╕рд╛рдареА рдирд╡реАрди рд╡реЗрдХреНрдЯрд░ рдЙрдШрдбрддреЛ.
JMAP рдЪреА рд░рдЪрдирд╛ рдпрд╛ рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓реА рдЖрд╣реЗ. рдЗрдВрдЯрд░рдиреЗрдЯ рдЗрдВрдЬрд┐рдирд┐рдЕрд░рд┐рдВрдЧ рдЯрд╛рд╕реНрдХ рдлреЛрд░реНрд╕ (IETF) рдЪреНрдпрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рдирд╛рдЦрд╛рд▓реА рдлрд╛рд╕реНрдЯрдореЗрд▓ рддрдЬреНрдЮрд╛рдВрджреНрд╡рд╛рд░реЗ рддреЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдд рдЖрд╣реЗ. рдкреНрд░реЛрдЯреЛрдХреЙрд▓ HTTPS рдЪреНрдпрд╛ рд╡рд░ рдЪрд╛рд▓рддреЛ, JSON рд╡рд╛рдкрд░рддреЛ (рдпрд╛ рдХрд╛рд░рдгрд╛рд╕реНрддрд╡ рддреЗ рдХреЗрд╡рд│ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рд╕рдВрджреЗрд╢рд╛рдВрдЪреА рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареАрдЪ рдирд╛рд╣реА рддрд░ рдХреНрд▓рд╛рдЙрдбрдордзреАрд▓ рдЕрдиреЗрдХ рдХрд╛рд░реНрдпреЗ рд╕реЛрдбрд╡рдгреНрдпрд╛рд╕рд╛рдареА рджреЗрдЦреАрд▓ рдпреЛрдЧреНрдп рдЖрд╣реЗ) рдЖрдгрд┐ рдореЛрдмрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рдореЗрд▓рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рдЪреА рд╕рдВрд╕реНрдерд╛ рд╕реБрд▓рдн рдХрд░рддреЗ. рдкрддреНрд░рд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, JMAP рд╕рдВрдкрд░реНрдХ рдЖрдгрд┐ рдХреЕрд▓реЗрдВрдбрд░ рд╢реЗрдбреНрдпреВрд▓рд░рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд┐рд╕реНрддрд╛рд░ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ.
рдирд╡реАрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреА рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ
JMAP рдЖрд╣реЗ
JMAP рдордзреАрд▓ рдИрдореЗрд▓ JSON рд╕рдВрд░рдЪрдирд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рдкреНрд░рд╕реНрддреБрдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рддреНрдпрд╛рдд рд╕рдВрджреЗрд╢рд╛рддреАрд▓ рд╕рд░реНрд╡ рдорд╛рд╣рд┐рддреА рдЕрд╕рддреЗ
рдХреНрд▓рд╛рдпрдВрдЯ рд╕рд░реНрд╡реНрд╣рд░рд╢реА рд╕рдВрдкрд░реНрдХ рд╕рд╛рдзрдгреНрдпрд╛рд╕рд╛рдареА API рд╡рд╛рдкрд░рддреЛ. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреЗ рдПрдХ рдкреНрд░рдорд╛рдгреАрдХреГрдд POST рд╡рд┐рдирдВрддреА рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЗ, рдЬреНрдпрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо JMAP рд╕рддреНрд░ рдСрдмреНрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рд╡рд░реНрдгрди рдХреЗрд▓реЗ рдЖрд╣реЗрдд. рд╡рд┐рдирдВрддреА рдЕрд░реНрдЬ/json рдлреЙрд░рдореЕрдЯрдордзреНрдпреЗ рдЖрд╣реЗ рдЖрдгрд┐ рддреНрдпрд╛рдд рдПрдХрдЪ JSON рд╡рд┐рдирдВрддреА рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрд╣реЗ. рд╕рд░реНрд╡реНрд╣рд░ рдПрдХ рдкреНрд░рддрд┐рд╕рд╛рдж рдСрдмреНрдЬреЗрдХреНрдЯ рджреЗрдЦреАрд▓ рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЛ.
╨Т
{
"using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
"methodCalls": [
[ "method1", {
"arg1": "arg1data",
"arg2": "arg2data"
}, "c1" ],
[ "method2", {
"arg1": "arg1data"
}, "c2" ],
[ "method3", {}, "c3" ]
]
}
рдЦрд╛рд▓реА рд╕рд░реНрд╡реНрд╣рд░ рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░реЗрд▓ рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ:
{
"methodResponses": [
[ "method1", {
"arg1": 3,
"arg2": "foo"
}, "c1" ],
[ "method2", {
"isBlah": true
}, "c2" ],
[ "anotherResponseFromMethod2", {
"data": 10,
"yetmoredata": "Hello"
}, "c2"],
[ "error", {
"type":"unknownMethod"
}, "c3" ]
],
"sessionState": "75128aab4b1b"
}
рдЙрджрд╛рд╣рд░рдг рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рд╕рдВрдкреВрд░реНрдг JMAP рддрдкрд╢реАрд▓ рдпреЗрдереЗ рдЖрдврд│реВ рд╢рдХрддрд╛рдд
/
рд╕рдВрднрд╛рд╡рдирд╛
рдорд╛рдирдХрд╛рдВрд╡рд░ рдХрд╛рдо рдЕрджреНрдпрд╛рдк рдЕрдзрд┐рдХреГрддрдкрдгреЗ рдкреВрд░реНрдг рдЭрд╛рд▓реЗ рдирд╛рд╣реА рд╣реЗ рддрдереНрдп рдЕрд╕реВрдирд╣реА, рдЙрддреНрдкрд╛рджрди рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рддреЗ рдЖрдзреАрдкрд╛рд╕реВрдирдЪ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЬрд╛рдд рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдУрдкрди рдореЗрд▓ рд╕рд░реНрд╡реНрд╣рд░рдЪреЗ рдирд┐рд░реНрдорд╛рддреЗ
рдЖрдореНрд╣реА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реВ рд╢рдХрддреЛ рдХреА рднрд╡рд┐рд╖реНрдпрд╛рдд рдЕрдзрд┐рдХрд╛рдзрд┐рдХ JMAP-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдХрд▓реНрдк рдЕрд╕рддреАрд▓. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, Open-Xchange рдЪреЗ рдбреЗрд╡реНрд╣рд▓рдкрд░, рдЬреЗ Linux рд╕рд┐рд╕реНрдЯреАрдорд╕рд╛рдареА IMAP рд╕рд░реНрд╡реНрд╣рд░ рддрдпрд╛рд░ рдХрд░рдд рдЖрд╣реЗрдд, рдирд╡реАрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓рд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддреАрд▓ рдЕрд╢реА рдХрд╛рд╣реА рд╢рдХреНрдпрддрд╛ рдЖрд╣реЗ. IMAP рддреНрдпрд╛рдВрдирд╛ рдЦреВрдк рдирдХрд╛рд░ рджреНрдпрд╛
IETF рдЖрдгрд┐ FastMail рдЪреЗ рдбреЗрд╡реНрд╣рд▓рдкрд░реНрд╕ рдореНрд╣рдгрддрд╛рдд рдХреА рдЕрдзрд┐рдХрд╛рдзрд┐рдХ рд╡рд╛рдкрд░рдХрд░реНрддреЗ рдореЗрд╕реЗрдЬрд┐рдВрдЧрд╕рд╛рдареА рдирд╡реАрди рдУрдкрди рд╕реНрдЯрдБрдбрд░реНрдбрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд╛рд╣рдд рдЖрд╣реЗрдд. JMAP рдЪреНрдпрд╛ рд▓реЗрдЦрдХрд╛рдВрдирд╛ рдЖрд╢рд╛ рдЖрд╣реЗ рдХреА рднрд╡рд┐рд╖реНрдпрд╛рдд рдЖрдгрдЦреА рдХрдВрдкрдиреНрдпрд╛ рдпрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреНрдпрд╛рд╕ рд╕реБрд░рд╡рд╛рдд рдХрд░рддреАрд▓.
рдЖрдордЪреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрдиреЗ рдЖрдгрд┐ рд╕реНрд░реЛрдд:
рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЗрдВрдЯрд░рдлреЗрд╕рд╕рд╣ рдХрд╕реЗ рдЬрддрди рдХрд░рд╛рд╡реЗ
1cloud.ru рдЪреЗ рдЙрджрд╛рд╣рд░рдг рд╡рд╛рдкрд░реВрди рдХреНрд▓рд╛рдЙрдб рд╕реЗрд╡реЗрдордзреНрдпреЗ DevOps
1рдХреНрд▓рд╛рдЙрдб рдХреНрд▓рд╛рдЙрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдЪреА рдЙрддреНрдХреНрд░рд╛рдВрддреА
HTTPS рд╡рд░реАрд▓ рд╕рдВрднрд╛рд╡реНрдп рд╣рд▓реНрд▓реЗ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рдХрд╕реЗ рдХрд░рд╛рд╡реЗ
рдЗрдВрдЯрд░рдиреЗрдЯрд╡рд░ рд╕рд░реНрд╡реНрд╣рд░рдЪреЗ рд╕рдВрд░рдХреНрд╖рдг рдХрд╕реЗ рдХрд░рд╛рд╡реЗ: 1cloud.ru рдЕрдиреБрднрд╡
рдПрдХ рд▓рд╣рд╛рди рд╢реИрдХреНрд╖рдгрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо: рд╕рддрдд рдПрдХрддреНрд░реАрдХрд░рдг рдореНрд╣рдгрдЬреЗ рдХрд╛рдп
рд╕реНрддреНрд░реЛрдд: www.habr.com