Advertisement
Guest User

Untitled

a guest
Jul 19th, 2019
396
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.55 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4.     "./models"
  5.     "log"
  6.     "github.com/gorilla/websocket"
  7.     //"fmt"
  8.     "net/http"
  9.     "html/template"
  10.     "github.com/gorilla/mux"
  11. )
  12.  
  13. var upgrader = websocket.Upgrader{
  14.     ReadBufferSize: 1024,
  15.     WriteBufferSize: 1024,
  16. }
  17.  
  18. var templates *template.Template
  19.  
  20. func setupRoutes() {
  21.     r := mux.NewRouter()
  22.     templates = template.Must(template.ParseGlob("pages/*.html"))
  23.     r.HandleFunc("/", models.IndexHandler).Methods("GET")
  24.     r.HandleFunc("/", models.IndexHandler).Methods("POST")
  25.     r.HandleFunc("/upgrade-click/", models.CUpgradeHandler).Methods("POST")
  26.     r.HandleFunc("/add/", models.BalanceHandler).Methods("POST")
  27.     r.HandleFunc("/auto-inc-one/", models.AutoIncOneHandler).Methods("POST")
  28.     r.HandleFunc("/ws", wsEndpoint)
  29.     //http.HandleFunc("/ws", wsEndpoint)
  30.     r.PathPrefix("/static/").Handler(http.StripPrefix("/static", http.FileServer(http.Dir("./static/"))))
  31.     http.Handle("/", r)
  32.     http.ListenAndServe(":8080", nil)
  33. }
  34.  
  35. func main() {
  36.     go models.AutoIncOne()
  37.     setupRoutes()
  38. }
  39.  
  40. func reader(conn *websocket.Conn) {
  41.     for {
  42.         messageType, p, err := conn.ReadMessage()
  43.         if err != nil {
  44.             log.Println(err)
  45.             return
  46.         }
  47.  
  48.         log.Println(string(p))
  49.  
  50.         if err := conn.WriteMessage(messageType, p); err != nil {
  51.             log.Println(err)
  52.             return
  53.         }
  54.     }
  55. }
  56.  
  57. func wsEndpoint(w http.ResponseWriter, r *http.Request) {
  58.     upgrader.CheckOrigin = func(r *http.Request) bool { return true }
  59.  
  60.     ws, err := upgrader.Upgrade(w, r, nil)
  61.     if err != nil{
  62.         log.Println(err)
  63.     }
  64.  
  65.     log.Println("Client Successfully Connected...")
  66.  
  67.     reader(ws)
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement