第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

如何從 Go gin 上下文中獲取請求主機(jī)?

如何從 Go gin 上下文中獲取請求主機(jī)?

Go
阿波羅的戰(zhàn)車 2022-11-08 16:12:04
我正在嘗試從 gin 上下文中獲取請求主機(jī),但我發(fā)現(xiàn)的唯一接近的是Context.ClientIP(). 我正在處理一個動態(tài) IP,所以我想在這里獲取主機(jī)名,而不是根據(jù)允許的列表檢查它以設(shè)置 CORS 標(biāo)頭。如何獲取客戶端主機(jī)名?
查看完整描述

1 回答

?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗 獲得超4個贊

由于您想將其用于 CORS,因此您可以從原始標(biāo)頭中獲取它。它本質(zhì)上是請求來自的網(wǎng)站的主機(jī)。它不是真正的客戶端主機(jī)。但是對于 CORS,您想使用 origin。因此,您設(shè)置了 header Access-Control-Allow-Origin。


origin := c.Request.Header.Get("Origin")

一個允許 CORS 的簡單處理程序可能如下所示。


allowList := map[string]bool{

    "https://www.google.com": true,

    "https://www.yahoo.com":  true,

}


r.GET("/", func(c *gin.Context) {

    if origin := c.Request.Header.Get("Origin"); allowList[origin] {

        c.Header("Access-Control-Allow-Origin", origin)

    }

    c.JSON(200, gin.H{"message": "ok"})

})


查看完整回答
反對 回復(fù) 2022-11-08
  • 1 回答
  • 0 關(guān)注
  • 302 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號