首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网页颤振式访问者计数器的实现

网页颤振式访问者计数器的实现
EN

Stack Overflow用户
提问于 2019-11-15 15:37:17
回答 2查看 1.3K关注 0票数 2

我试图在一个完全用flutter-web构建的网站上实现一个flutter-web,我只想用普通的省道代码和一些来自pub.dev的包来完成这个任务。

但一直困扰我的问题是,我需要找到一种方法,根据用户的浏览器或他们的设备,唯一地识别用户,这样我就不会在重新访问时一次又一次地增加同一个人的计数器。

到目前为止,我认为我可以使用[消]消防局跟踪访问者总数,并在启动时将其显示在网页上,并使用一些缓存包(如dcache局部存储 (如描述的这里) )来跟踪重新访问同一网页的用户。

是否有更好的方法来解决这个问题?如能提供任何帮助,将不胜感激。

(ps:我没有以前的网页开发经验)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-11-15 15:48:04

由于您谈论的是用户,我立即想到使用Firebase身份验证。

有两种方法可以在这里使用:

  1. 通过匿名身份验证,您可以为每个用户创建一个唯一的ID,而不需要他们输入凭据。
  2. 如果您想要在不同的浏览器/设备上识别相同的用户,他们必须向支持的提供商之一(电子邮件/密码、电话号码、电子邮件链接、facebook、google等)登录。

无论您选择哪一个,每个用户现在都将有一个唯一的ID (在Firebase术语中称为UID ),您可以使用该ID在数据库中识别它们。例如,您可以为数据库中的每个用户创建一个文档,其UID作为该文档的ID。这样,您就可以保证每个用户只有一个文档。

您仍然需要清点文档,为此,我建议您查看分布式计数器扩展

还要考虑一下,如果您想要使用Firebase实时数据库,而不是这里的Firestore,因为它可能给您提供一个更简单的定价模型,并且有一个内置的存在系统。您仍然会像以前一样使用Firebase身份验证,但只需交换数据库即可。

票数 1
EN

Stack Overflow用户

发布于 2021-04-24 19:33:21

如果你只想在你的way应用程序上捕捉访问者的数量,那么有一条很短的路可走。我在消防局中创建了一个名为“访问”的集合,并在其中生成了一个自动id,其中添加了一个名为"count“的字段。就这样!现在只需在第一个屏幕的init方法中调用此方法:

代码语言:javascript
复制
updateCounter() async {
final cRef = FirebaseFirestore.instance.collection('VISITS');
await cRef
    .doc("mS9fCXjvkpREt8LvanSb") //Paste the id which was generated automatically
    .set({"count": FieldValue.increment(1)}, SetOptions(merge: true));

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58880283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档