JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile

Ekuqaleni kwale nyanga kwiHacker News kwaxoxwa ngenkuthalo Iprothokholi yeJMAP iphuhliswe phantsi kolawulo lwe-IETF. Sagqiba kwelokuba sithethe ngesizathu sokuba ifuneka kwaye isebenza njani.

JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile
/ PxApha /PD

Into endingayithandanga nge-IMAP

Inkqubo IMAP yaziswa ngo-1986. Izinto ezininzi ezichazwe kumgangatho azisasebenzi namhlanje. Umzekelo, iprotocol inokubuyisela inani lemigca yeleta kunye neetshekhi MD5 -lo msebenzi awusetyenziswanga kubaxumi be-imeyile bale mihla.

Enye ingxaki inxulumene nokusetyenziswa kwezithuthi. Nge-IMAP, ii-imeyile zigcinwa kumncedisi kwaye ngamaxesha athile zingqamaniswe ngabathengi basekuhlaleni. Ukuba ngesizathu esithile ikopi kwisixhobo somsebenzisi iyonakala, yonke imeyile kufuneka idityaniswe kwakhona. Kwihlabathi lanamhlanje, xa amawaka ezixhobo eziphathwayo zinokudityaniswa kumncedisi, le ndlela ikhokelela ekusetyenzisweni okwandisiweyo kwetrafikhi kunye nezixhobo zekhompyuter.

Ubunzima abuveli kuphela ngeprotocol ngokwayo, kodwa kunye nabaxhasi be-imeyile abasebenza nayo. Ukusukela ekudalweni kwayo, i-IMAP ibiphantsi kohlaziyo olwahlukeneyo amaxesha amaninzi-uguqulelo lwangoku yi-IMAP4. Kwangaxeshanye, kukho izandiso ezininzi ozikhethelayo kuyo - kwinethiwekhi ipapashiwe RFCs ezingamashumi alithoba kunye nezongezo. Enye yakutshanje yi I-RFC8514, yaziswa ngo-2019.

Kwangaxeshanye, iinkampani ezininzi zibonelela ngezisombululo zazo ezizezazo ezifanele ukwenza lula ukusebenza nge-IMAP okanye zithathe indawo yazo: inbox, imbonakalo, UNilas. Isiphumo kukuba abathengi be-imeyile abakhoyo baxhasa kuphela ezinye zezinto ezikhoyo. Ukwahluka okunjalo kukhokelela kulwahlulo lwemarike.

"Ngaphezu koko, umxhasi we-imeyile wanamhlanje akufuneki athumele imiyalezo kuphela, kodwa akwazi ukusebenza nabafowunelwa kunye nokulungelelanisa nekhalenda," utshilo uSergei Belkin, intloko yophuhliso kumnikezeli we-IaaS. 1cloud.ru. - Namhlanje, iiprothokholi zomntu wesithathu ezifana I-LDAP, IkhadiDAV ΠΈ I-CalDAV. Le ndlela yenza kube nzima ukumiselwa kwee-firewall kuthungelwano lwenkampani kwaye ivule ii-vector ezintsha zohlaselo lwe-cyber.

I-JMAP yenzelwe ukusombulula ezi ngxaki. Iphuhliswa ziingcali ze-FastMail phantsi kwesikhokelo soBunjineli boMsebenzi we-Intanethi (IETF). Iprotocol isebenza phezulu kwe-HTTPS, isebenzisa i-JSON (ngenxa yesi sizathu ayifanelekanga kuphela ukutshintshiselana ngemiyalezo ye-elektroniki, kodwa kunye nokusombulula inani lemisebenzi efini) kwaye yenza lula umbutho wokusebenza ngeposi kwiinkqubo zeselula. Ukongeza ekuqhubeni iileta, i-JMAP ikwabonelela ngokukwazi ukudibanisa izandiso zokusebenza nabafowunelwa kunye nomcwangcisi wekhalenda.

Iimpawu zeprothokholi entsha

I-JMAP i iprotocol engenammiselo (engenammiselo) kwaye ayifuni uqhagamshelwano olusisigxina kwiseva yemeyile. Olu phawu lwenza lula umsebenzi kuthungelwano lweselfowuni olungazinzanga kwaye lugcina amandla ebhetri kwizixhobo.

I-imeyile kwi-JMAP imelwe kwifomati yesakhiwo se-JSON. Iqulethe lonke ulwazi oluvela kumyalezo I-RFC5322 (IFomathi yoMyalezo we-Intanethi), enokufunwa yi-imeyile yosetyenziso. Ngokwabaphuhlisi, le ndlela kufuneka yenze lula ukuyilwa kwabathengi, kuba kusonjululwa iingxaki ezinokuthi zibe kho (ezinxulunyaniswa ne. IMIME, ukufunda iiheader kunye ne encoding) umncedisi uya kuphendula.

Umxhasi usebenzisa i-API ukuqhagamshelana nomncedisi. Ukwenza oku, ivelisa isicelo esiqinisekisiweyo se-POST, iimpawu zazo ezichazwe kwiseshoni yeseshoni ye-JMAP. Isicelo sikwimo yesicelo/i-json kwaye siquka into enye yesicelo se-JSON. Umncedisi uphinda enze into enye yokuphendula.

Π’ Ukubalula (inqaku 3) ababhali banika lo mzekelo ulandelayo ngesicelo:

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

Apha ngezantsi kukho umzekelo wempendulo eya kwenziwa ngumncedisi:

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

Iinkcukacha ezipheleleyo ze-JMAP ezinomzekelo wophumezo zinokufunyanwa apha website esemthethweni iprojekthi. Apho ababhali baphinde bathumela inkcazo yenkcazo ye Abafowunelwa be-JMAP ΠΈ Iikhalenda zeJMAP β€” zijolise ekusebenzeni ngeekhalenda kunye noluhlu lwabafowunelwa. Ngu ngokwe ababhali, abaQhagamshelwano kunye neeKhalenda zohlulwa zaba ngamaxwebhu ahlukeneyo ukuze ziphuhliswe ngakumbi kwaye zibekwe emgangathweni ngokuzimeleyo β€œkundoqo”. Iikhowudi zomthombo ze-JMAP - ngaphakathi iindawo zokugcina kwiGitHub.

JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile
/ PxApha /PD

Ithemba

Nangona into yokuba umsebenzi osemgangathweni awukagqitywa ngokusemthethweni, sele uphunyezwa kwiindawo zokuvelisa. Umzekelo, abadali be-imeyile evulekileyo yomncedisi UKoreshi IMAP iphumeze inguqulelo yayo ye-JMAP. Abaphuhlisi abavela kwi-FastMail kukhutshwa isakhelo somncedisi weprothokholi entsha kwi Perl, kunye nababhali be JMAP babonisiwe iseva engummeli.

Sinokulindela ukuba kuya kubakho iiprojekthi ezisekelwe kwi-JMAP kwixesha elizayo. Umzekelo, kukho amathuba okuba abaphuhlisi abavela kwi-Open-Xchange, abenza iseva ye-IMAP yeenkqubo zeLinux, batshintshele kwiprothokholi entsha. Yala i-IMAP kakhulu abahlali bayabuza, eyenziwe malunga nezixhobo zenkampani.

Abaphuhlisi abavela kwi-IETF kunye ne-FastMail bathi abasebenzisi abaninzi nangakumbi babona isidingo somgangatho omtsha ovulekileyo wokuthumela imiyalezo. Ababhali be-JMAP banethemba lokuba kwixesha elizayo iinkampani ezininzi ziya kuqala ukuphumeza le protocol.

Izibonelelo zethu ezongezelelweyo kunye nemithombo:

JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile Ungazijonga njani iicookies zokuthotyelwa kweGDPR - isixhobo esitsha esivulekileyo siya kunceda

JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile UGcina Njani ngeNkqubo yeSijongano seNkqubo
JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile I-DevOps kwinkonzo yefu isebenzisa umzekelo we-1cloud.ru
JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile I-Evolution ye-1cloud cloud architecture

JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile Uhlaselo olunokwenzeka kwi-HTTPS kunye nendlela yokukhusela kubo
JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile Indlela yokukhusela iseva kwi-Intanethi: 1cloud.ru amava
JMAP - iprotocol evulekileyo eya kuthatha indawo ye-IMAP xa utshintshisa ngee-imeyile Inkqubo yemfundo emfutshane: yintoni uHlanganiso oluqhubekayo

umthombo: www.habr.com

Yongeza izimvo