respond to login attempt

Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
Jeff Carr 2019-05-24 06:43:42 +00:00
parent 0e7cb059d4
commit 19147ea950
1 changed files with 30 additions and 14 deletions

View File

@ -11,6 +11,7 @@ import "github.com/golang/protobuf/proto"
import pb "git.wit.com/wit/witProtobuf" import pb "git.wit.com/wit/witProtobuf"
import "github.com/gorilla/websocket" import "github.com/gorilla/websocket"
import "github.com/davecgh/go-spew/spew" import "github.com/davecgh/go-spew/spew"
import "github.com/tidwall/gjson"
const ( const (
API = "http://stackapi:4000/" API = "http://stackapi:4000/"
@ -22,14 +23,13 @@ type network struct {
Subdomain string `json:"subdomain"` Subdomain string `json:"subdomain"`
} }
func checkLogin(token string) bool { func checkLogin(ge *pb.Event) bool {
var networks []network
req, err := http.NewRequest("GET", API + "me", nil) req, err := http.NewRequest("GET", API + "me", nil)
if err != nil { if err != nil {
log.Println("can't make new req") log.Println("can't make new req")
return false return false
} }
req.Header.Set("X-Wit-Auth", token) req.Header.Set("X-Wit-Auth", ge.Token)
client := &http.Client{} client := &http.Client{}
resp, err := client.Do(req) resp, err := client.Do(req)
if err != nil { if err != nil {
@ -47,16 +47,17 @@ func checkLogin(token string) bool {
return false return false
} else { } else {
len := len(body) len := len(body)
err = json.Unmarshal(body, &networks) log.Println("body = ", string(body))
if err != nil { log.Println("body len = ", len)
log.Println("body = ", body) email := gjson.Get(string(body), "email")
log.Println("body len = ", len) log.Println("email = ", email.String())
log.Println("can't unmarshal resp for list networks: %s", err) log.Println("ge.Username = ", ge.Username)
return false if (email.String() == ge.Username) {
log.Println("\tTHIS TOTALLY WORKED MAN")
return true
} }
} }
spew.Dump(networks) return false
return true
} }
func fetchNetworks(token string) []network { func fetchNetworks(token string) []network {
@ -172,13 +173,28 @@ func processLoginEvent(ge *pb.Event) *pb.Event {
log.Println("processLoginEvent() START") log.Println("processLoginEvent() START")
log.Println("processLoginEvent() ge.Token =", ge.Token) log.Println("processLoginEvent() ge.Token =", ge.Token)
log.Println("processLoginEvent() NEED TO LOGIN HERE OR CHECK TOKEN WORKS") log.Println("processLoginEvent() NEED TO LOGIN HERE OR CHECK TOKEN WORKS")
checkLogin(ge.Token) if checkLogin(ge) {
log.Println("processLoginEvent() LOGIN WORKED")
log.Println("processLoginEvent() LOGIN WORKED")
log.Println("processLoginEvent() LOGIN WORKED")
e := pb.MakeOkResponse()
e.Comment = "LOGIN WORKED"
return e
} else {
log.Println("processLoginEvent() LOGIN FAILED")
log.Println("processLoginEvent() LOGIN FAILED")
log.Println("processLoginEvent() LOGIN FAILED")
e := pb.MakeFailResponse()
e.Comment = "LOGIN FAILED"
return e
}
log.Println("processLoginEvent() END") log.Println("processLoginEvent() END")
e := pb.Event{} e := &pb.Event{}
return &e return e
} }
// Also potentially look at: // Also potentially look at: