Ìdí tí Go fi ń kọjá aṣojú fún localhost
Ṣe ìyàtọ̀ láàárín ìyàsọ́tọ̀ loopback tí a kọ sínú Go àti NO_PROXY, kí o sì fi ipa ọ̀nà àyíká wé ProxyURL tí a sọ ní kedere.
Olùyan aṣojú Go tó dá lórí àyíká ní ìyàsọ́tọ̀ inú rẹ̀ fún localhost àti àwọn ibi ìrìnàjò IP loopback. Ṣíṣe NO_PROXY ní òfo kò yọ ìyàsọ́tọ̀ yẹn kúrò. Nítorí náà, ìdánwò inú ẹ̀rọ lè sopọ̀ tààrà nígbà tí ìbéèrè sí orúkọ host gbangba ń lo aṣojú gẹ́gẹ́ bí a ti retí.
Òfin náà ní í ṣe pẹ̀lú ibi tí ìbéèrè ń lọ. Kò dí ọ lọ́wọ́ láti lo olùgbọ́ aṣojú tí àdírẹ́sì tirẹ̀ jẹ́ 127.0.0.1.
Ṣàyẹ̀wò olùyan láì fi ìbéèrè ránṣẹ́
package main
import (
"fmt"
"net/http"
"net/url"
)
func main() {
fixed, _ := url.Parse("http://203.0.113.10:8080")
for _, target := range []string{
"http://localhost:8000/",
"http://127.0.0.1:8000/",
"http://example.com/",
} {
request, _ := http.NewRequest("GET", target, nil)
discovered, err := http.ProxyFromEnvironment(request)
explicit, _ := http.ProxyURL(fixed)(request)
fmt.Println(target, discovered, explicit, err)
}
}
Bí o bá fẹ́ rí ìfiwéra pẹ̀lú àyíká, ṣiṣẹ́ ètò náà pẹ̀lú àwọn oníyípadà aṣojú tí a ti ṣètò fún ìlànà iṣẹ́ náà. Ètò náà kàn ń ṣe àyẹ̀wò àwọn olùyan; kò sopọ̀ mọ́ aṣojú àpẹẹrẹ inú ìwé tàbí èyíkéyìí nínú àwọn ibi ìrìnàjò.
Wíwá láti inú àyíká àti olùyan tí a sọ ní kedere jẹ́ ìlànà ọ̀tọ̀
ProxyFromEnvironment wo scheme ibi ìrìnàjò, àwọn ètò àyíká àti àwọn òfin yíyẹra fún aṣojú, pẹ̀lú bí ó ṣe ń bójú tó loopback lọ́nà àkànṣe. ProxyURL dá URL aṣojú tí a pèsè padà fún gbogbo ìbéèrè tí a bá fún olùyan yẹn.
Nítorí náà, transport pàtó kan pẹ̀lú ProxyURL tí a sọ ní kedere lè fi ìbéèrè sí ibi inú ẹ̀rọ gba aṣojú kọjá. Èyí wúlò kìkì nígbà tí aṣojú bá lè dé ibi tí a béèrè lọ́nà tó bófin mu. localhost aṣojú jíjìnnà kì í ṣe localhost kọ̀ǹpútà alágbèéká rẹ; nítorí náà fífi ipa mú ipa ọ̀nà kì í di ìdánwò ìsopọ̀ tó wúlò fúnra rẹ̀.
Ṣàyẹ̀wò kí ìlànà iṣẹ́ tó fi àyíká rẹ̀ pamọ́ sínú cache
A fi ètò aṣojú àyíká net/http boṣewa pamọ́ sínú cache lẹ́yìn ìlò àkọ́kọ́. Yíyí oníyípadà àyíká padà lẹ́yìn náà nínú ètò kan náà tó ṣì ń ṣiṣẹ́ kì í ṣe ọ̀nà tó ṣeé gbẹ́kẹ̀lé láti tún ìdánwò ètò tuntun ṣe. Bẹ̀rẹ̀ ìlànà iṣẹ́ tuntun pẹ̀lú àwọn iye tí o fẹ́, tàbí pèsè olùyan kedere tí ìwọ ń ṣàkóso ìhùwàsí rẹ̀.
Ìhùwàsí loopback yìí kan olùyan aṣojú boṣewa Go 1.27.3. Àwọn èdè àti oníbàárà HTTP mìíràn lè lo òfin ipa ọ̀nà localhost tó yàtọ̀.