亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何停止代理請求的反向代理

如何停止代理請求的反向代理

Go
qq_笑_17 2022-09-12 17:02:46
有沒有辦法阻止向目標服務器發送傳入請求?例如,如果我有一個緩存,并且我只能使用本地數據響應客戶端?;蛘咴隍炞C后,我想向客戶端返回錯誤。httputil.ReverseProxy
查看完整描述

2 回答

?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

您應該能夠使用緩存包裝 ,該緩存可以根據請求使用緩存,也可以回退到 .http.DefaultTransporthttp.DefaultTransport


package main


import (

    "net/http"

    "net/http/httputil"

)


var _ http.RoundTripper = &CachingTransport{}


type CachingTransport struct {

    // put your cache here  

}


func (c *CachingTransport) RoundTrip(request *http.Request) (*http.Response, error) {

    // determine whether to use the cache and return, or use the default transport

    return http.DefaultTransport.RoundTrip(request)

}


func main() {

    _ = httputil.ReverseProxy{

        Transport: &CachingTransport{},

    }

}


查看完整回答
反對 回復 2022-09-12
?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

A 具有單個導出方法,即響應作者,要求 *請求),這使得它實現了網絡/http。處理程序接口。httputil.ReverseProxy

因此,基本上,在某個地方,您現在正在使用一個普通的實例,而不是使用您的自定義類型的實例,該實例也可以實現,保留指向 的實例的指針,并處理請求本身或調用該實例的。httputil.ReverseProxynet/http.Handlerhttputil.ReverseProxyReverseProxyServeHTTP


查看完整回答
反對 回復 2022-09-12
  • 2 回答
  • 0 關注
  • 170 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號