A cikin Go forward proxy, r.BasicAuth yana karanta kan Authorization, wanda yake na shiga gidan yanar gizon da ake nufi. Bayanan shaidar proxy ɗin kansa suna zuwa cikin Proxy-Authorization.

Ƙaramin adafta zai iya sake amfani da na'urar bincike ta jama'a ba tare da canza ainihin buƙatar ba:

func proxyBasicAuth(r *http.Request) (string, string, bool) {
    headers := make(http.Header)
    headers.Set("Authorization", r.Header.Get("Proxy-Authorization"))
    return (&http.Request{Header: headers}).BasicAuth()
}

Wannan yanki yana amfani da net/http. Yana mayar da ƙimar da aka bincika da alamar nasarar bincike; ba ya tabbatar da asusun. Miƙa sakamakon ga mai tabbatar da shaidar da proxy ɗin ya nufa.

Idan tabbatarwa ta kasa, mayar da 407 tare da ƙalubalen Proxy-Authenticate da ya dace kuma dakatar da aiwatar da wannan buƙatar. Tabbatar kafin buɗe haɗi zuwa inda ake nufi ko karɓar ramin CONNECT.

Bayan karɓar shaidar, yi amfani da kan Proxy-Authorization na proxy ɗin kansa kafin watsawa ta yau da kullum. Kiyaye filin Authorization na asali ga tushen. Idan akwai babban proxy na sama, yana buƙatar nasa tsarin tabbatarwa da aka yi da gangan maimakon samun wannan shaidar abokin ciniki bisa kuskure.

Labarai masu alaƙa