首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当事件发生时,从快递到角调用http

当事件发生时,从快递到角调用http
EN

Stack Overflow用户
提问于 2019-02-10 15:59:36
回答 1查看 52关注 0票数 0

我正在开发一个棱角分明的应用程序,它将使大约一千人同时连接到订票。我只想让它们中的"XYZ“同时访问对角分量。其他人会看到一个“等候室”的组成部分,直到轮到他们。我把整件事安排成这样:

  1. 用户进入页面。
  2. 我在http上调用http服务器。
  3. 服务器检查"connections“集合是否包含小于XYZ文档的内容。
  4. 如果为true,则解锁用户注册站组件,并使用http post req在db中创建一个新的文档。如果为false,则将其隐藏并显示waitingroom组件
  5. 当用户离开页面时,他在"connections“集合中的文档将通过http删除调用被销毁。

充分发挥作用。

现在的问题是,我想创建一种“优先级”系统,因为,如果你只是刷新一下,你可能会很幸运,即使你很快就到了,还有人从1990年起就在等待。所以我引入了一个“优先权”系统。当用户进行第一次http调用时,如果不允许用户,服务器将创建时间戳并将其推入数组中。

代码语言:javascript
复制
const timestamps = []
.
.
.
// this below is in http get req
Connessione.countDocuments({},(err,count)=>{
    if(count<=nmax){
      console.log("Ok")
      res.status(200).json({allowed: true})
    }
    else{
      const timestamp = req.params.timestamp;
      timestamps.push(timestamp);
      console.log("Semo troppi")
      res.status(401).json({allowed: false})
    }
  });

这样做的目的是侦听db的更改,并且当数据库中只有XYZ-1时。打个电话到第一张时间戳的角度正面,就会说:“嘿,如果你想我们做完的话,你可以去。”然后给他解锁进入注册部分。

问题是我不能每一秒连续请求http,直到有一个自由的地方.有什么方法可以在服务器上发送请求,当服务器说可以的时候,调用角并说“嘿,伙计,你可以走了!”希望你能理解我的问题。如果没有在评论中问我。提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-10 16:56:20

甚至在一开始我对套接字也有问题,所以我将尝试以一种简单的方式解释这个概念,每当您编写一个APIEndpoint时,您就有一个单向连接,即您将request发送到服务器,它返回一些response,如下所示。

代码语言:javascript
复制
Event 1:
(Client) -> Request -> (Server)

Event 2:
(Client) <- Response <- (Server)

对于API,如果没有请求,就无法获得响应。

为了克服这个问题,到目前为止,我可以想到两种可能的方法。

  1. 使用套接字,您可以使用套接字创建双向连接。就像这样

(Server) <-> data <-> (Client)

这意味着您可以通过两种方式传递数据,客户机到服务器,服务器到客户端。因此,每当发生事件(在数据库中添加或更新某些数据),就可以向客户端发出或广播它,客户端可以监听并接收该套接字。

在你的例子中,因为它是两个连接,你可以从角度发出数据,我在底部附加了几个链接。请看一下。

  1. 使用XML/AJAX请求,这不是一个更好的方法,使用setInterval您可以在大约5秒内调用服务器并执行所需的操作。
代码语言:javascript
复制
setInterval(ajaxCall, 5000); //5000 MS == 5 seconds

function ajaxCall() {
    //do your AJAX stuff here
}

链接:

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

https://stackoverflow.com/questions/54618231

复制
相关文章

相似问题

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