Mis see kõik räkirakendustest räägib?

Sellest räägitakse palju Rack, kuid kui te pole ise raamiautor, näete seda harva. Mis on Rack? Ja miks peaksite rakenduse arendajana sellest hoolima?

Racki põhitõed

Rack on omamoodi vahevara. See asub teie veebirakenduse ja veebiserveri vahel. See haldab kõiki serverispetsiifilisi API-kõnesid, edastab HTTP-päringu ja kõik keskkonnaparameetrid räsi abil ning annab teie rakenduse vastuse serverile tagasi. Teisisõnu, teie rakendus ei pea teadma, kuidas HTTP-serveriga rääkida, vaid ta peab teadma, kuidas Rackiga rääkida.

Racki eelised

Sellel on mitmeid eeliseid. Esiteks on Rackiga rääkimine lihtne (nagu näete allpool). Teiseks, kuna peate teadma ainult seda, kuidas Rackiga rääkida, ja Rack teab, kuidas rääkida paljude erinevate HTTP-serveritega, töötab teie rakendus kõigil neil HTTP-serveritel. Rack on nagu universaalne adapter veebirakenduste jaoks.

Racki rakendused ise pole midagi erilist. Tegelikult on Rack API nii surnud, seda saab kirjeldada ühe lausega:

Rack-rakendus on iga Ruby objekt, mis reageerib küsimusele
instagram viewer
helistama meetodil, võtab ühe räsiparameetri ja tagastab massiivi, mis sisaldab vastuse olekukoodi, HTTP vastuse päiseid ja vastuse keha kui stringide massiivi.

See on päris palju. See kõlab tõele liiga lihtsana või vähemalt liiga kasulikuks, kuid kui asi tõepoolest taandub, siis see on kõik, mida te tegelikult teete, kui räägite HTTP-serveritega.

Miks on rack oluline?

Kuid reaalse küsimuse juurde: miks peaksite rakendusprogrammeerijana Rackist hoolima? Esiteks on teie raamistiku toimimise mõistmisel alati valgust. Kuid mis veelgi olulisem - seal on kasulikke asju, mida saate Racki abil teha. Kõige tähtsam: vahevara.

See kõlab natuke veider. Kuid lisakiht teie rakenduse ja racki vahel võib olla hea asi ja viia sisse funktsioone, mis ainult segaksid teie rakendust. See vahevara teeb lihtsalt Rackilt päringu vastuvõtmise, rakendusele edastamise ja selle hankimise lisage sellele midagi, filtreerige see või midagi sellist ja seejärel andke vastus tagasi Rack. Seda saab kasutada väga huvitavate väikeste funktsioonide, näiteks server-agnostilise logija või päringu rakendamiseks meelerahu kontrollija või väike vahevara, mis e-kirjaga administraatorile saadetakse iga kord, kui teie rakendus tagasi tuleb 404. Ükski neist funktsioonidest ei pea teie rakendust segama, neid saab Racki abil vahevarana rakendada.

instagram story viewer