fingerprint.go 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package data
  2. import (
  3. "time"
  4. "git.scraperwall.com/scw/geoip"
  5. "git.scraperwall.com/scw/grs"
  6. )
  7. type Fingerprint struct {
  8. // ID bson.ObjectId `bson:"_id,omitempty" json:"_id"`
  9. ClientID string `bson:"cid" json:"cid" form:"cid"`
  10. Remote string `bson:"remote" json:"remote" form:"remote"`
  11. Url string `bson:"url" json:"url" form:"url"`
  12. Fingerprint string `bson:"fp" json:"fp" form:"fp"`
  13. CreatedAt time.Time `bson:"created_at" json:"created_at" form:"created_at"`
  14. Source string `bson:"source" json:"source" form:"source"`
  15. XForwardedFor string `bson:"x_forwarded_for" json:"x-forwarded-for" form:"x_forwarded_for"`
  16. XRealIP string `bson:"x_real_ip" json:"x-real-ip" form:"x_real_ip"`
  17. XScwIP string `bson:"x_scw_ip" json:"x-scw-ip" form:"x_scw_ip"`
  18. Grs *grs.GRS `bson:"grs" json:"grs" form:"grs"`
  19. GeoIP *geoip.GeoIP `bson:"geoip" json:"geoip" form:"geoip"`
  20. Data map[string]interface{} `bson:"data" json:"data" form:"data"`
  21. //UserAgent string `bson:"user_agent" json:"user_agent" form:"user_agent"`
  22. //Adblock bool `bson:"adblock" json:"adblock" form:"adblock"`
  23. //AvailableResolution []int `bson:"available_resolution" json:"available_resolution" form:"available_resolution"`
  24. //Canvas string `bson:"canvas" json:"canvas" form:"canvas"`
  25. //ColorDepth int `bson:"color_depth" json:"color_depth" form:"color_depth"`
  26. //CpuClass string `bson:"cpu_class" json:"cpu_class" form:"cpu_class"`
  27. //DoNotTrack string `bson:"do_not_track" json:"do_not_track" form:"don_not_track"`
  28. //HasLiedBrowser bool `bson:"has_lied_browser" json:"has_lied_browser" form:"has_lied_browser"`
  29. //HasLiedLanguages bool `bson:"has_lied_languages" json:"has_lied_languages" form:"has_lied_languages"`
  30. //HasLiedOs bool `bson:"has_lied_os" json:"has_lied_os" form:"has_lied_os"`
  31. //HasLiedResolution bool `bson:"has_lied_resolution" json:"has_lied_resolution" form:"has_lied_resolution"`
  32. //IndexedDb int `bson:"indexed_db" json:"indexed_db" form:"indexed_db"`
  33. //JsFonts []string `bson:"js_fonts" json:"js_fonts" form:"js_fonts"`
  34. //Language string `bson:"language" json:"language" form:"language"`
  35. //LocalStorage int `bson:"local_storage" json:"local_storage" form:"local_storage"`
  36. //NavigatorPlatform string `bson:"navigator_platform" json:"navigator_platform" form:"navigator_platform"`
  37. //Plugins []string `bson:"regular_plugins" json:"regular_plugins" form:"regular_plugins"`
  38. //Resolution []int `bson:"resolution" json:"resolution" form:"resolution"`
  39. //SessionStorage int `bson:"session_storage" json:"session_storage" form:"session_storage"`
  40. //TouchSupport []interface{} `bson:"touch_support" json:"touch_support" form:"touch_support"`
  41. //WebGl string `bson:"webgl" json:"webgl" form:"webgl"`
  42. //TimeZoneOffset int `bson:"timezone_offset" json:"timezone_offset" form:"timezone_offset"`
  43. }