AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

深入理解Go標準庫-HTTP-Server的啟動

來源: 責編: 時間:2023-11-01 09:18:07 266觀看
導讀如何用最少的代碼創建一個HTTP server?package mainimport ( "net" "net/http")func main() { // 方式1 err := http.ListenAndServe(":8080", nil) if err != nil { panic(err) }}點開http.ListenAndServe可以看到

如何用最少的代碼創建一個HTTP server?IeB28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式1 err := http.ListenAndServe(":8080", nil) if err != nil {   panic(err) }}

點開http.ListenAndServe可以看到函數只是創建了Server類型并調用server.ListenAndServe()IeB28資訊網——每日最新資訊28at.com

所以下面的和上面的代碼沒有區別IeB28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式2 server := &http.Server{Addr: ":8080"} err := server.ListenAndServe() if err != nil {  panic(err) }}

ListenAndServe()如其名會干兩件事IeB28資訊網——每日最新資訊28at.com

  • 監聽一個端口,即Listen的過程
  • 處理進入端口的連接,即Serve的過程

所以下面的代碼和上面的代碼也沒區別IeB28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式3 ln, err := net.Listen("tcp", ":8080") if err != nil {  panic(err) } server := &http.Server{} err = server.Serve(ln) if err != nil {  panic(err) }}

一張圖展示三種使用方式IeB28資訊網——每日最新資訊28at.com

圖片圖片IeB28資訊網——每日最新資訊28at.com

路由?no!Handler!

按上面的代碼啟動HTTP Server沒有太大意義,因為我們還沒有設定路由,所以無法正常響應請求IeB28資訊網——每日最新資訊28at.com

$ curl  127.0.0.1:8080 404 page not found

暫停思考一下,服務器返回404是因為沒有設定路由么?no,no,no,你需要轉變一下思維。服務器返回404不是因為我們沒有設置路由,而是因為沒有設置請求的處理程序,這個處理程序在Go中叫作:Handler!IeB28資訊網——每日最新資訊28at.com

type Handler interface { ServeHTTP(ResponseWriter, *Request)}

本文鏈接:http://www.tebozhan.com/showinfo-26-16258-0.html深入理解Go標準庫-HTTP-Server的啟動

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 快速入門Python Django模型實例!

下一篇: Tailwind CSS vs 現代CSS,Tailwind CSS 會像CSS-in-JS 一樣亡?

標簽:
  • 熱門焦點
  • 石頭自清潔掃拖機器人G10S評測:多年黑科技集大成之作 懶人終極福音

    科技圈經常能看到一個詞叫“縫合怪”,用來形容那些把好多功能或者外觀結合在一起的產品,通常這樣的詞是貶義詞,但如果真的是產品縫合的好、縫合的實用的話,那它就成了中性詞,今
  • 線程通訊的三種方法!通俗易懂

    線程通信是指多個線程之間通過某種機制進行協調和交互,例如,線程等待和通知機制就是線程通訊的主要手段之一。 在 Java 中,線程等待和通知的實現手段有以下幾種方式:Object 類下
  • 把LangChain跑起來的三個方法

    使用LangChain開發LLM應用時,需要機器進行GLM部署,好多同學第一步就被勸退了,那么如何繞過這個步驟先學習LLM模型的應用,對Langchain進行快速上手?本片講解3個把LangChain跑起來
  • Java NIO內存映射文件:提高文件讀寫效率的優秀實踐!

    Java的NIO庫提供了內存映射文件的支持,它可以將文件映射到內存中,從而可以更快地讀取和寫入文件數據。本文將對Java內存映射文件進行詳細的介紹和演示。內存映射文件概述內存
  • 企業采用CRM系統的11個好處

    客戶關系管理(CRM)軟件可以為企業提供很多的好處,從客戶保留到提高生產力。  CRM軟件用于企業收集客戶互動,以改善客戶體驗和滿意度。  CRM軟件市場規模如今超過580
  • 阿里大調整

    來源:產品劉有媒體報道稱,近期淘寶天貓集團啟動了近年來最大的人力制度改革,涉及員工績效、層級體系等多個核心事項,目前已形成一個初步的“征求意見版”:1、取消P序列
  • 小米汽車電池信息疑似曝光:容量101kWh,支持800V高壓快充

    7月14日消息,今日一名博主在社交媒體發布了一張疑似小米汽車電池信息的照片,顯示該電池包正是寧德時代麒麟電池,容量為101kWh,電壓為726.7V,可以預測小
  • 7月4日見!iQOO 11S官宣:“雞血版”驍龍8 Gen2+200W快充加持

    上半年已接近尾聲,截至目前各大品牌旗下的頂級旗艦都已悉數亮相,而下半年即將推出的頂級旗艦已經成為了數碼圈爆料的主流,其中就包括全新的iQOO 11S系
  • iQOO Neo8 Pro搶先上架:首發天璣9200+ 安卓性能之王

    經過了一段時間的密集爆料,昨日iQOO官方如期對外宣布:將于5月23日推出全新的iQOO Neo8系列新品,官方稱這是一款擁有旗艦級性能調校的作品。隨著發布時
Top