Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

54 lines
947B

  1. package main
  2. import (
  3. log "github.com/sirupsen/logrus"
  4. "net/http"
  5. "time"
  6. )
  7. type login struct {
  8. user string
  9. pass string
  10. buser string //admin
  11. bpass string //always_correct_md5 => YWRtaW46YWx3YXlzX2NvcnJlY3RfbWQ1
  12. token string
  13. ts time.Time
  14. }
  15. func apiV1Login(w http.ResponseWriter, r *http.Request) {
  16. res := apiV1ResponseBlank()
  17. l := login{}
  18. e := l.initRequest(r)
  19. apiV1ErrorCheck(e)
  20. res.add("user", l.user)
  21. res.add("pass", l.pass)
  22. res.add("buser", l.buser)
  23. res.add("bpass", l.bpass)
  24. bs := r.Header.Get("Biukop-Session")
  25. bst := r.Header.Get("Biukop-Session-Token")
  26. bse := r.Header.Get("Biukop-Session-Expire")
  27. res.add("bs", bs)
  28. res.add("bse", bse)
  29. res.add("bst", bst)
  30. res.sendJson(w)
  31. }
  32. func (m *login) initRequest(r *http.Request) (e error) {
  33. e = r.ParseForm()
  34. if e != nil {
  35. log.Error(e)
  36. return
  37. }
  38. m.user = r.PostForm.Get("u")
  39. m.pass = r.PostForm.Get("p")
  40. m.buser, m.bpass, _ = r.BasicAuth()
  41. return
  42. }