<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Go:服務(wù)怎么做到監(jiān)聽隨機端口

          共 1075字,需瀏覽 3分鐘

           ·

          2022-01-14 06:14

          點擊上方藍色“Go語言中文網(wǎng)”關(guān)注,每天一起學(xué) Go

          通常,服務(wù)一般會監(jiān)聽固定的端口。不過如果是本地測試服務(wù),也許有時候想隨機一個可用的端口。比如 Python 可以這么做:

          $?python?-m?SimpleHTTPServer?0
          Serving?HTTP?on?0.0.0.0?port?43481?...

          Python 可以,Go 肯定也可以。那 Go 中如何實現(xiàn)呢?

          直接上代碼:

          package?main

          import?(
          ????"log"
          ????"net"
          ????"net/http"
          )

          func?createListener()?(l?net.Listener,?close?func())?{
          ????l,?err?:=?net.Listen("tcp",?":0")
          ????if?err?!=?nil?{
          ????????panic(err)
          ????}

          ????return?l,?func()?{
          ????????_?=?l.Close()
          ????}
          }

          func?main()?{
          ????l,?close?:=?createListener()
          ????defer?close()

          ????http.Handle("/",?http.HandlerFunc(func(rw?http.ResponseWriter,?r?*http.Request)?{
          ????????//?添加你的代碼
          ????}))

          ????log.Println("listening?at",?l.Addr().(*net.TCPAddr).Port)
          ????http.Serve(l,?nil)
          }

          運行看:

          $?go?run?main.go?
          2022/01/04?17:40:16?listening?at?33845

          參考:https://dev.to/clavinjune/listening-to-random-available-port-in-go-6bl



          推薦閱讀


          福利

          我為大家整理了一份從入門到進階的Go學(xué)習(xí)資料禮包,包含學(xué)習(xí)建議:入門看什么,進階看什么。關(guān)注公眾號 「polarisxu」,回復(fù) ebook 獲??;還可以回復(fù)「進群」,和數(shù)萬 Gopher 交流學(xué)習(xí)。

          瀏覽 57
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  69AV在线观看 | 国产激情一区 | igao在线观看免费完整版 | 久久久蜜桃视频 | 免费性爱视频在线观看 |