Golang неправильный заголовок HTTP-запроса

Я строю 2 API. Один обращается с просьбой к другому.

Чтобы вызвать API, который получает запросы, нам нужно передать заголовок X-Token. Я делаю это с Голангом

client := &http.Client{
    Transport: &http.Transport{
        TLSClientConfig: &tls.Config{
            InsecureSkipVerify: true,
        },
    },
}

req, err := http.NewRequest("GET", "https://localhost:8086/v2/example", nil)
if err != nil {
    c.JSON(http.StatusInternalServerError, gin.H{"Error": err.Error()})
}
req.Header.Add("accept", "application/json")
req.Header.Add("content-type", "application/json")
req.Header.Add("x-token", "a2e63ee01401aaeca78be023dfbb8c59")

resp, err := client.Do(req)

В другом API я получаю заголовок http с gin следующим образом:

token := c.Request.Header.Get("x-token")

Я не знаю, почему мой заголовок приходит с другим значением и без X-Token. Спасибо!

Результат fmt.Printf("%+v", c.Request.Header):

map[User-Agent:[Go-http-client/1.1] Referer:[https://localhost:8086/v2/example] Accept-Encoding:[gzip]]

Я не знаю, где мои заголовки x-token, accept и content-type....

ВАЖНО

  • Если я сделаю запрос с заголовком x-token в Postman к запрошенному API, я получу правильный заголовок.
  • Если я изменю адрес запроса в API, который делает запросы, например, https://httpbin.org/headers, я тоже получу правильный заголовок... .

person tiagopotencia    schedule 11.10.2016    source источник
comment
что выводит fmt.Println(c.Request.Header)?   -  person Apin    schedule 11.10.2016
comment
@Apin Апин, я отредактировал вопрос! :)   -  person tiagopotencia    schedule 11.10.2016


Ответы (1)


Привет, ребята! я нашел решение....

Я пока не знаю почему... но я думаю, что golang не обрабатывает URL-адреса без косой черты....

https://localhost:8086/v2/example
отличается от
https://localhost:8086/v2/example/

Это была моя проблема....

Я просто копирую и пропускаю сгенерированный golang код почтальона... и это была "самая большая" разница....

Спасибо, мистер. Почтальон...

person tiagopotencia    schedule 11.10.2016