Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Millised on mõned populaarsed tööriistad päritoludevaheliste taotluste simuleerimiseks kohalikus arenduskeskkonnas


Millised on mõned populaarsed tööriistad päritoludevaheliste taotluste simuleerimiseks kohalikus arenduskeskkonnas


Populaarsed tööriistad ja meetodid päritoludevaheliste taotluste simuleerimiseks kohalikes arenduskeskkondades on peamiselt brauserite kehtestatud piirangute käitlemise ja päritolu ressursside jagamise (CORS) käitlemise ja möödasõitmise piirangud. Need tööriistad aitavad arendajatel testida ja siluda ristkehadevahelisi interaktsioone, võimaldades COR-id kohalikes serverites, kasutades puhverserveriid või võimendades brauseri laiendusi ja konfiguratsioone. Allpool on üksikasjalik teave selle jaoks kasutatud levinumate lähenemisviiside ja tööriistade kohta.

KORSE mõistmine

Originaalsete ressursside jagamine (CORS) on brauserites rakendatud turbemehhanism, mis piirab ühe päritoluga (domeen, protokoll, port) töötavaid veebirakendusi erineva päritoluga ressursside juurde pääsemisest, välja arvatud juhul, kui server lubab seda selgesõnaliselt läbi konkreetsete HTTP-päiste. CORS-id serveritega, mis saadavad tagasi päiseid nagu "Juurdepääsukontroll-luba-Origin", et näidata, millistel domeenidel on lubatud juurdepääsu ressurssidele. Brauserid jõustavad selle, saates enne tegeliku päringu esitamist teatud tüüpi olenditevaheliste kõnekõnede "eellennutaotluse" päringu (HTTP suvandite päring). CORS -i päised ei kontrolli mitte ainult seda, millised päritolu on lubatud, vaid ka seda, milliseid HTTP -meetodeid ja päiseid saab kasutada ning kas mandaadid nagu küpsised saab saata.

Kohalikud arenguprobleemid

Kohaliku arengu ajal kulgevad projektid sageli erinevatel LocalHost Portsidel või domeenidel, mis loeb erineva päritolu ja käivitab CORS-i piirangud, muutes originaalpäringute testimise keeruliseks. Arendajad vajavad tööriistu või konfiguratsioone, mis simuleerivad või mööduvad need piirangud kohapeal, et võimaldada nende esiosa ja tagakülg õigesti suhelda, mõjutamata tootmiskeskkonda.

Tööriistad ja meetodid COR -i simuleerimiseks või ümbersõiduks kohapeal

1. Kohalik serveri puhverserver

Puhverserver on üks kõige kindlamaid ja laialdasemalt kasutatavaid lahendusi. See hõlmab puhverserveri käitamist, mis toimib vahendajana kliendi ja API-serveri vahel, suunates CORS-i probleemide vältimiseks sama päritolu kaudu tõhusalt osariigi risttaotlusi.

-Arendusserverid sisseehitatud puhverserveri tugiga: paljud esiotsa arendusriistad, näiteks Vite, Webpack Dev Server, või looge rakenduse React'i tugi puhverserveri konfigureerimisel. Näiteks looge React App võimaldab arendajatel määratleda puhverserveri jaotises "Packass.json" või "setupproxy.js", mis edastab API -kõned teisele serverile, mis töötab erineval pordil või domeenil. Nii arvab brauser, et see suhtleb sama päritoluga, kuna taotlused on esitatud Dev Serverile endale, mis edastab need seejärel API -serverile.

-eraldiseisvad puhverserveri serverid: tööriistad nagu HTTP-Proxy-Middleware (Node.js jaoks) või kohalikud puhverserverid, näiteks NGINX, mis on konfigureeritud kohalikes masinates, võivad olla marsruudi taotluste puhverserverid ja lisada vajalikud CORS-i päised. Arendajad saavad konfigureerida need serverid, et muuta vastuseid lennult, et hõlmata juurdepääsu kontroll-kontroll-origin: *`või muud sobivad päised.

2. CORS-i toega kohalikud API koopiad

CORS -i toetava API kohaliku eksemplari käitamine on veel üks tõhus lähenemisviis. Dockeri või kohalike seadistuste kasutamisega juhivad arendajad oma masinatel API-d koos CORS-i abil, mis on võimaldanud arendusrežiimis, mis võimaldab LocalHostil töötavatel esiotsadel vabalt suhelda ilma piiranguteta. Sellel on täieliku kontrolli eelised ja pole sõltuvust väliskeskkonnast.

3. brauseri pikendused arenguks

Kiireks testimiseks või silumiseks kasutavad paljud arendajad brauseri pikendusi, mis keelavad või muudavad BORS -i käitumist ajutiselt brauserites. Neid tööriistu tuleks kasutada ainult arengus, mitte kunagi tootmises:

- Chrome'i jaoks on CORS unlock: see laiendus muudab päringu päiseid ja võimaldab päritoludevahelisi taotlusi, süstides vajalikud päised vastustele brauseri CORS-i jõustamisest möödasõiduks.

- Korssid kõikjal Firefoxi jaoks: sarnaselt Chrome'i pikendusega lülitab see Corsi piiranguid sisse ja välja, võimaldades arendajatel testida ristikõnesid ilma serveri konfiguratsioone muutmata.

- Safari arendusmenüü: Safari võimaldab menüü kaudu ajutiselt keelata päritolu ristpiiranguid, mis on kasulikud Maci kasutajatele, kes teevad kohalikku testimist.

4. Failide avamise asemel kohaliku veebiserveri käitamine

CORS -i vigade üks algpõhjus on failide laadimine otse brauserites `failiga: //` protokoll. Paljud õpetused ja küsimused ja vastused rõhutavad, et HTML -i lehtede avamine otse ilma veebiserverita käivitab vigu, kuna brauserid blokeerivad paljusid turvalisuse toiminguid. Seega, minimaalse kohaliku HTTP-serveri käitamine, kasutades selliseid tööriistu nagu Pythoni sisseehitatud HTTP-server (`Python3 -M HTTP.Server`), Node'i pakett HTTP-Server` või Live-Server võimaldab õiget kohalikest originaali ja väldib neid vigu.

5. Serveri reageerimise päiste muutmine

Oma API või taustateenuse väljatöötamisel tehakse CORS -i päiste lisamine tavaliselt vahetarkvara kaasamisel või veebiserveri konfigureerimisel CORS -i toetamiseks. Populaarsed taustaprogrammid ja keeled on loonud viisid CORS -i võimaldamiseks:

- Node.js/Express: paketi `cors` vahetarkvara kasutamine lihtsustab CORS -i päiste lisamist.

- ASP.NET WEB API: toetab atribuute nagu "[EnableCors]", mis võimaldavad täpsustada päritolu, meetodeid ja päiseid, mis on lubatud päritoludevahelisteks päringutes.

-Django: vahetarkvara nagu `django-cors-pead` kasutatakse CORS-i toetamise võimaldamiseks kohapeal.

6

Mõned veebiteenused, näiteks BeeCeptor, võimaldavad arendajatel testida API -sid ja mööduda COR -idest, suunates taotlused puhverserverite kaudu. Need teenused lisavad sobivad CORS -päised, nii et brauserid võtavad vastused vastu. See lähenemisviis on kasulik kiireks silumiseks, kui kohalik seadistamine pole teostatav, vaid seda tuleks kasutada ettevaatlikult ja mitte tootmiskeskkonnas.

***

Kokkuvõte populaarsetest tööriistadest ja tehnikatest

- Dev Serveri puhverserver: kasutades puhverserveri võimalusi sellistes tööriistades nagu Vite, looge rakendus React, Webpack Dev Server.
-Kohalikud puhverserveri serverid: HTTP-Proxy-Middleware in Node.js, Nginx konfigureeritud puhverserverina.
- Kohalik API koos CORS -iga: Dockeri konteinerite käitamine või kohalikud API eksemplarid, mis on konfigureeritud CORS -iga arendamiseks.
- Brauseri pikendused: Cors UNBlock (Chrome), KORSID igal pool (Firefox), Safari keelab ristkehade piirangud.
-Kohalik HTTP-server: Pythoni `http.server`, sõlme` http-server` või live-serveri asemel käitamine `faili: //` urls kasutamise asemel.
-Bacpend Framework vahetarkvara: `cors` pakett Node.js jaoks,` [EnableCors] `in ASP.NET Web API,` Django-Cors-pead "Django jaoks.
- Kolmandate osapoolte puhverserverite teenused: Beeceptor ja sarnased teenused ajutiselt CORS-ist möödasõitmiseks.

Kõik need tööriistad ja lähenemisviisid pakuvad erinevaid stsenaariume, alates kiiretest testidest kuni tugevate kohalike arendustegevusteni, võimaldades arendajatel simuleerida või mööda minna päritolude ristjärgsetest taotlustest ohutult ja tõhusalt, ilma et see kahjustaks tootmiskeskkonnas turvalisust.