Maaaring hindi angkop ang isang pangkalahatang proxy sa bawat source ng package. Sinusuportahan ng modernong Yarn ang mga setting ng network ayon sa hostname, na nagpapahintulot sa isang piniling host na gumamit ng ibang ruta kaysa sa default.

Halimbawa, maaaring panatilihin ng isang proyekto ang isang pangkalahatang ruta at pumili ng iba para sa isang panloob na registry:

httpsProxy: "http://203.0.113.10:8080"
networkSettings:
  "registry.example.internal":
    httpsProxy: "http://203.0.113.20:8080"

Ang dalawang address ay mga placeholder. Para sa isang pangkalahatang ruta patungo sa mga pampublikong source ng package, ang listahan ng HTTP proxy ay nag-aalok ng mga kandidato kapag pinapayagan ang mga pampublikong proxy. Panatilihin ang override ng panloob na registry sa aprubadong proxy nito. Ilagay ang configuration sa angkop na .yarnrc.yml para sa isang modernong release ng Yarn. Dalawang proxy ang pinipili ng halimbawang ito; hindi nito sinasabi na dapat direktang kumonekta ang panloob na host.

Itugma ang hinihiling na hostname

Ang entry ng networkSettings ay nalalapat sa isang pattern ng hostname, hindi sa isang scope ng package o sa isang arbitrary na path ng URL. Panatilihing eksakto ang panuntunan para sa isang host kapag iyon ang ibig mong sabihin. Ang wildcard ay kapaki-pakinabang lamang kapag talagang nilalayon mong ibahagi ng mga karagdagang host ang configuration.

Ang scope ng package at ang hostname ng network ay magkaibang mga selector. Maaaring kunin ang isang naka-scope na package mula sa isang registry na ang host ay ibinabahagi sa ibang mga package, habang ang isang na-redirect na artifact ay maaaring magmula sa ganap na ibang hostname.

Sundin ang buong landas ng pag-download

Kung ang metadata ay gumagamit ng isang host at ang pag-download ng archive ay gumagamit ng iba, maaaring tumugma ang mga ito sa magkaibang mga setting ng network. Itala ang URL na talagang nabigo bago palawakin ang panuntunan. Hindi pinatutunayan ng “gumana ang registry” kung aling ruta ang pinili ng susunod na kahilingan.

Ang per-host na mga setting ng Yarn ay maaari ring magsama ng CA at iba pang configuration ng TLS. Panatilihing hiwalay ang mga desisyong iyon: ang pagpili ng address ng proxy ay hindi nagbibigay sa sarili nito ng pagtitiwalang kailangan para sa isang kapaligirang nagsusuri.

Gawing nakikita ang override

Siyasatin ang epektibong configuration ng proyekto gamit ang mga tool na sinusuportahan ng release ng Yarn nito, pagkatapos ay subukan ang nilalayong kahilingan. Iwasang ibahagi ang buong dump ng configuration kung may kasama itong mga kredensyal.

Kapaki-pakinabang ang tampok na ito kapag tunay na nangangailangan ang mga host ng magkaibang ruta. Kung dapat gamitin ng bawat kahilingan ang parehong endpoint, ang isang pangkalahatang setting ay mas madaling panatilihin kaysa sa lumalaking listahan ng magkakatulad na override ng hostname.

Kaugnay na mga artikulo