记录对web服务的所有请求
本文关键字:请求 服务 web 记录 | 更新日期: 2023-09-27 17:59:21
我构建了一个web服务,它接受SITE1的请求,然后将值插入SITE2。我们遇到了一个问题,SITE1偶尔会在很短的时间内(30秒-5分钟内)发送两次请求。如果最初的请求完成得足够快,我就有安全的保护措施来防止输入重复的记录。但是,如果在第一个请求完成之前收到第二个请求,则web服务会同时完成这两个请求。
我需要弄清楚是否有一种方法可以存储请求的全局临时列表,以便在插入值之前与该列表进行比较。
我的web服务在一个非常简单的级别上运行,它是简单的http://url.com/Tool?ID=123434
。我所需要做的就是将传入的ID存储在全局列表中,直到请求成功完成。
我有什么选择?
我不知道,全局静态变量在整个web应用程序中对所有连接都是全局的。这很简单,只需执行以下操作即可。
public static class GlobalVariables
{
public static List<long> TicketsInQueue { get; set; }
}
在应用程序启动时,变量被初始化(应用程序启动,而不是URL请求)。一旦收到请求,就会发出一个查询,查看列表是否包含给定的ID,如果不包含,则将该值添加到列表中。如果它确实存在,则只需记录请求并将其丢弃。