codwelt/codviews

laravel 包,用于获取页面访问历史和页面访问记录

v0.1.3 2019-03-06 21:15 UTC

This package is auto-updated.

Last update: 2024-09-07 15:28:16 UTC


README

为了更好地展示文档,请访问 https://codwelt.com/blog/posts/paquete-codviews

codviews

Codviews 是一个基于 php 开发的 laravel 包,旨在帮助我们快速了解我们的网站对世界的影响。

它具有一个 api,可以与图形或其他资源配合使用,以可视化网页上发生的事情。

codview 提供的一些数据包括访问我们页面的用户数量、访问者的 ip 地址、地理位置以及其他有助于我们了解地理影响的资料。

安装和使用信息

安装

要使用此包,我们必须进行 composer requires

composer require codwelt / codviews 安装包后,我们将执行

composer dump-autoload 通过这种方式,我们确保包已正确安装,然后我们将发布包所需的文件。

php artisan vendor: publish 通过这种方式,我们将项目中的视图、种子、配置和中间件发布。下一步将是执行包的迁移。

php artisan migrate 现在我们已成功执行迁移,我们将执行初始配置的种子

php artisan db: seed --class = Configcodviewseed 现在我们已成功安装了包!恭喜!!

包配置

由于包已成功安装,现在我们必须进行配置。如果我们执行了前面的种子步骤,无需担心,因为这会为包留下默认配置。同样,我们必须对路由和访问者注册的激活方法进行中间件配置。

配置路由的中间件

有些路由可以放置中间件,以便只有已登录用户或他们提出的标准才会执行,不对公众开放。

因此,如果我们进入 config / codviews.php 文件夹,我们将找到类似以下内容

return [ 'Middleware' => [ 'web' => [ 'admin' => [ 'Web', 'auth' ], ], ], ];

在中间部分的 admin 区域中,我们可以放置一个中间件数组,它将在包的路由上执行。

注册访问激活器

为了获取访问记录,我们必须执行一个记录触发器,它将从访问者那里获取所有必要的数据并将其存储在数据库中,以便管理员查看。

您可以通过两种方式激活该触发器:通过要监控的路由的中间件,或通过 AJAX 调用一个路由。

中间件方法

通过中间件方法,我们将使用在执行 vendor: publish 命令时发布的中间件,这已在 App \ Http \ Middleware \ codviews 项目的中间件文件夹中发布。

要使用此中间件,我们必须在 kernel 中以以下方式注册它

我们前往App \ Http文件夹,找到名为Kernel.php的文件。我们将在导入部分粘贴中间件的路由,如图所示。使用App \ Http \ Middleware \ codviews \ Tracker;

一旦导入跟踪器,我们将继续将其注册为路由中的使用项。我们将前往文件底部,找到名为$ routeMiddleware的变量,并按照以下方式添加我们的中间件。

'Tracker' => \ App \ Http \ Middleware \ codviews \ Tracker :: class,

完成此操作后,剩下的就是在我们的路由中使用中间件。

AJAX方法

此方法比之前的方法简单得多,因为我只需要指定JQUERY。通过此方法激活,我们必须粘贴此javascript代码,该代码是触发跟踪的路由的ajax调用。此代码将粘贴到我们想要监控的某些文件js或视图脚本中。

#code $ .ajax ({ url: "/ codviews / crawl / api", data: "", method: "get", success: function (result) { }, error: function (result) { console.log (result); }, beforeSend: function () { } });

完成此操作后,跟踪器的调用将返回以下数据供使用

TotalVisits; 注册至今的总访问量。continent: 访问来源的大陆。Country: 访问来源的国家。region: 访问发生的地区。created_at: 访问日期。

ROUTES

要获取数据,我们可以使用以下路由,它将返回页面的访问数据

此路由将返回所有访问记录的查看页面url ('/ codviews / home /') 或路由 ('CodviewInicio')

此路由将详细显示特定IP的访问记录url (/ codviews / details / {id}) 或路由 ('CodviewDetalle')

此url将带我们到该包的配置页面url ('/ codviews / configuration /') 或路由 ('codviewsconfigcontroller');

ROUTES API

此url不会带来该月对页面的访问记录url ('/ codviews / visits / graphics / month / month')

此url不会带来该月每天对页面的访问记录url ('/ codviews / visits / graphics / month / days')

如果我们调用此url,我们可以从访问历史中获取url页面的地理数据('/ codviews / visits / graphic / demographic / {option}') 此路由有一系列选项,我们可以根据需要组合,例如我们可以获取的数据和获取它们的格式

如何获取

我们在路由的最后部分添加一个名为relacion的变量

关系变量的选项

数值代码人口统计数据的选项

国家 大陆 城市 地区

以我们想要的关系格式:https://codwelt.com/codviews/visitas/graficas/demograficas/paises?relacion=numerico 在进行此调用时,我以json格式获取了以下内容

[

相对量是指不同人访问的次数,绝对量是指所有人访问的次数。

现在我们将进行相同的代码关系查询 https://codwelt.com/codviews/visitas/graficas/demograficas/paises?relacion=codigo { "US":{ "Pais":"美国", "CantidadRelativa":282, "CantidadAbsoluta":11735 }, "CO":{ "Pais":"哥伦比亚", "CantidadRelativa":79, "CantidadAbsoluta":4400 }, "DE":{ "Pais":"德国", "CantidadRelativa":10, "CantidadAbsoluta":51 }, "CN":{ "Pais":"中国", "CantidadRelativa":22, "CantidadAbsoluta":26 }, "RU":{ "Pais":"俄罗斯", "CantidadRelativa":16, "CantidadAbsoluta":19 }, "AU":{ "Pais":"澳大利亚", "CantidadRelativa":2, "CantidadAbsoluta":13 }, "JP":{ "Pais":"日本", "CantidadRelativa":2, "CantidadAbsoluta":13 }, "CA":{ "Pais":"加拿大", "CantidadRelativa":6, "CantidadAbsoluta":12 }, "BR":{ "Pais":"巴西", "CantidadRelativa":1, "CantidadAbsoluta":12 }, "TH":{ "Pais":"泰国", "CantidadRelativa":11, "CantidadAbsoluta":11 }, "NL":{ "Pais":"荷兰", "CantidadRelativa":7, "CantidadAbsoluta":10 }, "FR":{ "Pais":"法国", "CantidadRelativa":9, "CantidadAbsoluta":9 }, "IN":{ "Pais":"印度", "CantidadRelativa":2, "CantidadAbsoluta":7 }, "GB":{ "Pais":"英国", "CantidadRelativa":4, "CantidadAbsoluta":5 }, "":{ "Pais":null, "CantidadRelativa":3, "CantidadAbsoluta":5 }, "IE":{ "Pais":"爱尔兰", "CantidadRelativa":5, "CantidadAbsoluta":5 }, "SE":{ "Pais":"瑞典", "CantidadRelativa":1, "CantidadAbsoluta":4 }, "KR":{ "Pais":"韩国", "CantidadRelativa":2, "CantidadAbsoluta":4 }, "CL":{ "Pais":"智利", "CantidadRelativa":2, "CantidadAbsoluta":3 }, "ES":{ "Pais":"西班牙", "CantidadRelativa":2, "CantidadAbsoluta":2 }, "IR":{ "Pais":"伊朗", "CantidadRelativa":1, "CantidadAbsoluta":2 }, "ID":{ "Pais":"印度尼西亚", "CantidadRelativa":2, "CantidadAbsoluta":2 }, "IT":{ "Pais":"意大利", "CantidadRelativa":1, "CantidadAbsoluta":2 }, "DZ":{ "Pais":"阿尔及利亚", "CantidadRelativa":1, "CantidadAbsoluta":1 }, "TR":{ "Pais":"土耳其", "CantidadRelativa":1, "CantidadAbsoluta":1 }, "GT":{ "Pais":"危地马拉", "CantidadRelativa":1, "CantidadAbsoluta":1 }, "MX":{ "Pais":"墨西哥", "CantidadRelativa":1, "CantidadAbsoluta":1 }, "UA":{ "Pais":"乌克兰", "CantidadRelativa":1, "CantidadAbsoluta":1 }, "LT":{ "Pais":"立陶宛共和国", "CantidadRelativa":1, "CantidadAbsoluta":0 } }