JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo

Kumayambiriro kwa mwezi uno pa Hacker News zinakambidwa mwachangu JMAP protocol idapangidwa motsogozedwa ndi IETF. Tinaganiza zoti tikambirane chifukwa chake zinali zofunika komanso mmene zimagwirira ntchito.

JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo
/ PxPa /PD

Zomwe sindimakonda za IMAP

Pulogalamu IMAP idakhazikitsidwa mu 1986. Zinthu zambiri zomwe zafotokozedwa muyeso sizilinso zofunikira masiku ano. Mwachitsanzo, protocol ikhoza kubweza chiwerengero cha mizere ya kalata ndi ma checksums MD5 - izi sizikugwiritsidwa ntchito mwamakasitomala amakono a imelo.

Vuto lina ndi lokhudzana ndi kuchuluka kwa magalimoto. Ndi IMAP, maimelo amasungidwa pa seva ndipo nthawi ndi nthawi amalumikizidwa ndi makasitomala am'deralo. Ngati pazifukwa zina kukopera pa chipangizo cha wosuta kuipitsidwa, makalata onse ayenera kulumikizidwa kachiwiri. M'dziko lamakono, pamene masauzande a mafoni a m'manja angagwirizane ndi seva, njira iyi imayambitsa kuwonjezereka kwa magalimoto ndi makompyuta.

Zovuta sizimangokhala ndi protocol yokha, komanso ndi makasitomala a imelo omwe amagwira nawo ntchito. Chiyambireni kupangidwa kwake, IMAP yakhala ikusinthidwa mosiyanasiyana nthawi zambiri - mtundu wapano lero ndi IMAP4. Nthawi yomweyo, pali zowonjezera zambiri zomwe mungasankhe - pa intaneti lofalitsidwa ma RFC makumi asanu ndi anayi okhala ndi zowonjezera. Chimodzi mwa zaposachedwa kwambiri ndi Zogulitsaanayambitsa mu 2019.

Nthawi yomweyo, makampani ambiri amapereka mayankho awoawo omwe akuyenera kukhala kosavuta kugwira ntchito ndi IMAP kapena m'malo mwake: Gmail, Chiyembekezo, Nylasi. Zotsatira zake ndikuti makasitomala omwe alipo kale amangothandizira zina zomwe zilipo. Kusiyanasiyana kotereku kumabweretsa magawo amsika.

"Kuphatikiza apo, kasitomala wamakono wa imelo sayenera kungotumiza mauthenga, koma amatha kugwira ntchito ndi olumikizana nawo ndikugwirizanitsa ndi kalendala," akutero Sergei Belkin, wamkulu wa chitukuko pa wopereka IaaS. 1cloud.ru. - Masiku ano, ma protocol a chipani chachitatu ngati LDAP, Mapulogalamu onse pa intaneti ΠΈ CalDAV. Njirayi imapangitsa kuti pakhale zovuta kukonza ma firewall mumanetiweki amakampani ndikutsegula ma vector atsopano okhudza cyber. "

JMAP idapangidwa kuti ithetse mavutowa. Ikupangidwa ndi akatswiri a FastMail motsogozedwa ndi Internet Engineering Task Force (IETF). Protocol imayenda pamwamba pa HTTPS, imagwiritsa ntchito JSON (chifukwa chake sikoyenera kutumizirana mauthenga apakompyuta, komanso kuthetsa ntchito zingapo pamtambo) komanso imathandizira bungwe logwira ntchito ndi makalata pama foni am'manja. Kuphatikiza pakusintha zilembo, JMAP imaperekanso kuthekera kolumikiza zowonjezera kuti mugwire ntchito ndi omwe mumalumikizana nawo komanso kalendala.

Zomwe zili mu protocol yatsopano

JMAP ndi protocol yopanda malire (zopanda malire) ndipo sizifunikira kulumikizana kosatha ku seva yamakalata. Izi zimathandizira ntchito pamanetiweki osakhazikika komanso kusunga batire pazida.

Imelo mu JMAP imayimiridwa mumtundu wa JSON. Lili ndi mfundo zonse zochokera mu uthengawo Zogulitsa (Intaneti Message Format), yomwe ingafunike ndi maimelo. Malinga ndi omwe akutukula, njira iyi iyenera kupangitsa kuti makasitomala azitha kupanga mosavuta, chifukwa kuthetsa mavuto omwe angakhalepo (okhudzana ndi Yesani, kuwerenga mitu ndi encoding) seva idzayankha.

Wothandizira amagwiritsa ntchito API kuti alumikizane ndi seva. Kuti muchite izi, imapanga pempho lovomerezeka la POST, zomwe zimafotokozedwa mu gawo la gawo la JMAP. Pempholi lili mu mawonekedwe a application/json ndipo lili ndi chinthu chimodzi chopempha cha JSON. Seva imapanganso chinthu chimodzi choyankha.

Π’ zofunika (mfundo 3) olembawo amapereka chitsanzo chotsatirachi ndi pempho:

{
  "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
  "methodCalls": [
    [ "method1", {
      "arg1": "arg1data",
      "arg2": "arg2data"
    }, "c1" ],
    [ "method2", {
      "arg1": "arg1data"
    }, "c2" ],
    [ "method3", {}, "c3" ]
  ]
}

Pansipa pali chitsanzo cha yankho lomwe seva ipanga:

{
  "methodResponses": [
    [ "method1", {
      "arg1": 3,
      "arg2": "foo"
    }, "c1" ],
    [ "method2", {
      "isBlah": true
    }, "c2" ],
    [ "anotherResponseFromMethod2", {
      "data": 10,
      "yetmoredata": "Hello"
    }, "c2"],
    [ "error", {
      "type":"unknownMethod"
    }, "c3" ]
  ],
  "sessionState": "75128aab4b1b"
}

Mafotokozedwe athunthu a JMAP okhala ndi zitsanzo atha kupezeka pa webusaitiyi polojekiti. Kumeneko olembawo adayikanso kufotokozera kwazomwe zimapangidwira Mauthenga a JMAP ΠΈ Kalendala ya JMAP - amayang'ana kugwira ntchito ndi makalendala ndi mindandanda yolumikizirana. Wolemba malinga ndi olemba, Ma Contacts ndi Makalendala adagawidwa m'zikalata zosiyana kuti athe kupititsa patsogolo ndikukhazikitsidwa mosadalira "core". Zizindikiro za JMAP - mu nkhokwe pa GitHub.

JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo
/ PxPa /PD

Zoyembekeza

Ngakhale kuti ntchito yofananayo sinamalizidwe mwalamulo, ikugwiritsidwa ntchito m'malo opangira. Mwachitsanzo, omwe amapanga seva yamakalata otseguka Cyrus IMAP adakhazikitsa mtundu wake wa JMAP. Madivelopa ochokera ku FastMail anamasulidwa seva ya protocol yatsopano ku Perl, ndipo olemba a JMAP adawonetsedwa seva ya proxy.

Titha kuyembekezera kuti mtsogolomu padzakhala ma projekiti ambiri ozikidwa pa JMAP. Mwachitsanzo, pali mwayi woti opanga kuchokera ku Open-Xchange, omwe akupanga seva ya IMAP yamakina a Linux, asinthira ku protocol yatsopano. Kanani IMAP iwo kwambiri anthu ammudzi akufunsa, zopangidwa mozungulira zida za kampaniyo.

Madivelopa ochokera ku IETF ndi FastMail akuti ogwiritsa ntchito ochulukirachulukira akuwona kufunikira kwa mulingo watsopano wotseguka wa mauthenga. Olemba a JMAP akuyembekeza kuti m'tsogolomu makampani ambiri ayamba kugwiritsa ntchito ndondomekoyi.

Zida zathu zowonjezera ndi magwero:

JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Momwe mungayang'anire ma cookie kuti atsatire GDPR - chida chatsopano chotseguka chithandizira

JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Momwe Mungasungire ndi Chiyanjano cha Application Programming
JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo DevOps muutumiki wamtambo pogwiritsa ntchito chitsanzo cha 1cloud.ru
JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Kusintha kwa kamangidwe ka mitambo 1cloud

JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Kuwukira komwe kungachitike pa HTTPS ndi momwe mungatetezere kwa iwo
JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Momwe mungatetezere seva pa intaneti: chidziwitso cha 1cloud.ru
JMAP - protocol yotseguka yomwe idzalowe m'malo mwa IMAP mukasinthana maimelo Pulogalamu yaifupi yamaphunziro: Continuous Integration ndi chiyani

Source: www.habr.com

Kuwonjezera ndemanga