gpt4 book ai didi

c# - C# IHttphandler 上 jQuery 自动完成的随机排序请求

转载 作者:太空狗 更新时间:2023-10-29 23:53:05 25 4
gpt4 key购买 nike

我有一个自动完成文本框,它通过用 C# 编写的 IIS7 请求 IHttphandler。

但是到达网络服务器的请求似乎是无序的。

这是我在输入“guidolin”后从 IHttpHandler 获得的日志示例

406302 2010-11-24 12:33:58,448 [8256] DEBUG Services.jQueryHandler  - VALID jQueryHandler request data:guidoli RequestTime:24/11/2010 12:33:58(396)
406418 2010-11-24 12:33:58,564 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guidolin RequestTime:24/11/2010 12:33:58(507)
407751 2010-11-24 12:33:59,897 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:gu RequestTime:24/11/2010 12:33:58(685)
408008 2010-11-24 12:34:00,154 [8256] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guid RequestTime:24/11/2010 12:34:00(56)
408167 2010-11-24 12:34:00,313 [8000] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guido RequestTime:24/11/2010 12:34:00(244)
408562 2010-11-24 12:34:00,708 [5912] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:gui RequestTime:24/11/2010 12:34:00(368)
408832 2010-11-24 12:34:00,978 [8000] DEBUG Services.jQueryHandler - VALID jQueryHandler request data:guidol RequestTime:24/11/2010 12:34:00(946)

很明显,请求没有按正确的顺序到达。有没有人已经遇到过这个问题或者有人知道解决方法?

这是自动完成的 jQuery 代码:

textBox.autocomplete({
source: textBox.attr("data-handler-url"),
select: function (event, ui) {
textBox.next("input[type='hidden']").val(ui.item.objectId);
textBox.data('selected-value', ui.item.value);
}
});

最佳答案

这是 HTTP,根据定义无状态 协议(protocol)。 HTTP 中没有“顺序”的概念;一切都以请求消息开始。您不能以期望或要求请求具有任何逻辑顺序的方式对您的应用程序进行编码;毕竟,是客户选择发送请求。只有它们到达的物理顺序很重要。

在您的示例中,谁能说客户没有键入 guidolin,然后将其更改为 gu

为了回答您的问题,此问题没有解决方法,因为它不是问题。对您的应用程序进行编程,使其尽可能不关心这些消息到达的“顺序”。

关于c# - C# IHttphandler 上 jQuery 自动完成的随机排序请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4267324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com