dql123000 2016-02-19 09:12
浏览 122
已采纳

Golang HTTP服务器从一个请求获得了两个远程端口

I'm working on a Macbook Pro with OSX 10.11.3, and the Golang version is 1.5,

following is my testing code

package main 
import (
   "net/http"
   "fmt"
)
func main(){

    http.HandleFunc("/", processGET)
    c := &http.Server{
        Addr: ":8080",
    }
    c.ListenAndServe()
}
func processGET(w http.ResponseWriter, r *http.Request){
    fmt.Println(r.RemoteAddr)
}

The expected result should print the ip and the request port of the client on the command line screen,

however, each time I connected to the http server(testing with Chrome on iPhone and Macbook separately), I got two records with same ip(same request, of course) and different ports(requesting port), like this,

192.168.11.2:53061
192.168.11.2:53062

Does that mean the client initiate two requests at one time? I searched about the http protocol request information but still have no idea.

Thanks!

  • 写回答

1条回答 默认 最新

  • douyong1285 2016-02-19 09:25
    关注

    Your browser is looking for a favicon.ico initiating two requests. Try with curl and you will get one request.

    wireshark output

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应