開發過程中對接其他團隊接口,請求接口中增加了幾個自定義頭部,都是小寫開頭。使用go編寫客戶端進行請求,無論如何怎么測試都失敗。可是使用curl,輕輕松松正常返回。無奈只能使用撒手鐧,打印了一下請求頭,想和curl對比下,發現請求頭里的自定義頭都變成了大寫開頭了。這是怎么回事呢?查看源代碼,發現原來代碼里做了首字母轉大寫的處理。我當場差點哭了!!!
由於header是一個map所以可以直接給header賦值,繞過set、add方法。
req.Header["id"] = []string{"abc"}