salem/tracker

通过获取访客数据来跟踪您的项目。

v1.0.2 2020-04-06 08:42 UTC

This package is auto-updated.

Last update: 2024-09-08 17:32:31 UTC


README

GitHub forks GitHub stars

关于

Salem\Tracker是一个Laravel包,通过收集访客请求和IP地址的大量信息,简化了跟踪Laravel项目的操作。

功能

  • 您可以在不每天手动的情况下获取关于访客的以下数据:

    • 国家.
    • 城市.
    • 访客所在国家的货币.
    • 纬度和经度.
    • 浏览器及其版本.
    • 平台.
  • 收集访客数据后,您可以通过包中的API展示这些数据。

    • (GET) /tracker/all 从数据库获取所有跟踪记录。
    • (GET) /tracker/show/{id} 通过ID从数据库获取跟踪数据。
    • (GET) /tracker/ip/{ip} 从数据库获取IP数据。
  • 此包还简化了获取所需数据的过程,例如:

    • 检查此IP是否之前已被跟踪
    • 此IP的最后访问时间
    • 最多访客来自国家城市浏览器平台

安装

composer require salem/tracker

运行迁移,您有两种方式可以实现:

  • 直接运行php artisan migrate
  • 发布迁移php artisan vendor:publish -- *provider="Salem\Tracker\TrackerServiceProvider" --tag=migration 然后 php artisan migrate

发布配置文件(可选)

  • 运行php artisan vendor:publish --provider="Salem\Tracker\TrackerServiceProvider" -- tag=config

  • 您可以通过运行php artisan vendor:publish --provider="Salem\Tracker\TrackerServiceProvider"来发布所有文件。

Provicer & Aliases放入app.php(可选)

Salem\Tracker\TrackerServiceProvider::class,
'Tracker' => Salem\Tracker\Facades\Tracker::class,

如何使用。

此包提供了许多使用方法。

  • 您可以将包中间件\Salem\Tracker\Controls\Http\middleware\VisitorTrack::class,放入App\Http\Kernel中的$middleware数组。

  • 或者,您可以将此脚本放入您的视图中的</body>之前,以发送Ajax请求保存访客数据{!! Tracker::script() !!}{!! getTrack()->script() !!}

此外,此包还提供了许多用于获取数据的函数。

  • Tracker::trackedBefore($ip) 检查给定的IP是否之前已被跟踪,并且其数据是否存在于数据库中。
  • Tracker::getBest($compare, $number) 为您提供给定compare的前$number个顶级结果,比较可以是ip_addresscountry_namecitycurrencycountry_codebrowserbrowser_versionplatform等,例如,如果您将数字设置为10,它将给出给定比较的前10个。
  • Tracker::getPaginatedTracking($paginate = 20, $full = false) 从数据库获取分页记录,$full布尔值确保您想要完整数据还是格式化数据。
  • Tracker::getTrackingPaginatedByIp($ip, $paginate = 20, $full = false) 从数据库获取给定IP的分页记录,$full布尔值确保您想要完整数据还是格式化数据。
  • Tracker::getTracking($id, $full = false) 通过ID从数据库获取跟踪记录,以格式化或未格式化的方式。
  • Tracker::getTrackingByIp($ip, $full = false) 通过IP从数据库获取跟踪记录,以格式化或未格式化的方式。
  • Tracker::getLastIpVisit($ip, $full = false) 获取给定IP的最后访问的格式化或未格式化数据。

所有函数都通过包助手getTrack()可用,例如getTrack()->getTrackingByIp($ip, $full = false)

版权信息

http://ip-api.com.