gorilla

    0熱度

    1回答

    我正在構建一個簡單的Slackbot作爲Go的學習體驗,並且我已經擊中了我的第一個障礙:我無法寫回消息給連接! 這是我的主要FUNC: func main() { conn, botId, err := slackInit(os.Getenv("SLACKBOT_TOKEN")) if err != nil { return } defer conn.Close()

    1熱度

    1回答

    我試圖用負載平衡器在aws(無docker)上使用golang和大猩猩創建websockets,我有一個連接到負載平衡器的證書。 我設法使代碼與http一起工作,但是當我嘗試通過https使用代碼時,它不起作用。 我在做什麼錯? 當從http轉移到https時,我將客戶端請求更改爲wss而不是ws,並將證書添加到負載平衡器。 這是我的代碼。 這是我main.go http.HandleFunc("

    1熱度

    1回答

    我目前正在編寫一個寧靜的web服務器,我想從angular2前端進行測試。由於服務器託管在另一個域名,而開發我需要Access-Control-Allow-Origin: *(我認爲)。我嘗試用大猩猩處理程序包,即實現了以下內容:嘗試使用下面的捲曲請求服務器時 origins := handlers.AllowedOrigins([]string{"*"}) log.Fatal(http.Lis

    1熱度

    2回答

    我使用Gorilla多路複用器來處理所有的路由。現在我的應用程序工作正常,我想找到一種方法來記錄我的所有響應代碼,例如statds。我發現這個包:https://godoc.org/github.com/gorilla/handlers#LoggingHandler 這使我可以輸出所有的響應到Apache格式。雖然這很好,但它不是我想要的100%。我只是想要extract的迴應狀態,並將它們發送到

    3熱度

    1回答

    我研究過大猩猩/ websocket包的Godoc。 在Godoc它明確提出 併發 連接支持一個併發的讀寫器和一個並行的作家。 (NextWriter,SetWriteDeadline,WriteMessage,WriteJSON,EnableWriteCompression,SetCompressionLevel)並且不超過一個goroutine調用讀取方法(NextReader,SetRead

    0熱度

    2回答

    我的基本main設置: muxRouter := mux.NewRouter() v1Router.Router(muxRouter.PathPrefix("/v1").Subrouter()) http.Handle("/", muxRouter) n := negroni.Classic() n.Use(negroni.HandlerFunc(apiRouter.Middlew

    0熱度

    1回答

    我嘗試使用gorilla/mux創建路由,其中​​一些應該受基本身份驗證保護,其他應該不受保護。具體而言,/v2下的每條路由都應該要求基本認證,但/health之下的路由應公開。 正如你在下面看到的,我可以用BasicAuth()來包裝我的/v2路由處理程序,但這違背了DRY原則,並且還容易出錯,更不用說忘記包裝其中一個處理程序的安全隱患。 我從curl有以下輸出。除了最後一個,我都期待着。沒有認

    1熱度

    1回答

    我試圖修改大猩猩聊天示例以發送消息到特定的客戶端而不是廣播。首先,我將特定客戶端存儲在集線器中,以防止它是Id。 Hub.go type Hub struct { Clients map[int]*Client // Changed this piece to store id (int) Broadcast chan []byte Register chan

    3熱度

    1回答

    我想我的一些查詢參數是可選的。至於現在,我有 r.HandleFunc("/user", userByValueHandler). Queries( "username", "{username}", "email", "{email}", ). Methods("GET") 但在這種情況下,「用戶名」和「電子郵件」必須存在於請求。我想有更靈

    2熱度

    2回答

    發送GET請求時獲取301狀態代碼 我有一個非常簡單的Go服務器代碼設置與mux,當我使用curl與GET請求參數(localhost:8080/suggestions/?locale=en),我得到301狀態代碼(永久移動)。但是當沒有獲取參數時,它工作得很好。 func main() { router := mux.NewRouter().StrictSlash(true) router.