- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 hunchentoot session 值使我的服务器代码可重入。问题是,根据定义, session 值在 session 期间保留,即从同一浏览器的一个调用到下一个,而我真正要寻找的是线程特定的重入,所以所有的值在调用之间消失——我想将每次点击视为单独的“从头开始”事件,即使它们来自同一 session 。很容易将驱动程序设置为零,或删除我的 session 值,但我想知道是否有“正确”的方法来做到这一点?我在文档中没有看到任何基于线程的 hunchentoot:session-value 类比。
提前感谢您提供的任何指导。
最佳答案
如果您希望一个值是“线程特定的”,同时对每个请求都是“从头开始”,则需要每个请求都必须在一个全新的线程中分派(dispatch)。根据 Hunchentoot 文档,情况并非如此,它表示支持两种模型:单线程 taskmaster 和每个连接线程 taskmaster。
如果您的配置是多线程的,那么请求处理中绑定(bind)的特定于线程的变量因此可以预期是针对每个连接的。在单线程 Hunchentoot 设置中,它实际上是全局的,绑定(bind)到请求服务线程。
hunchentoot:session-value
的基于线程的模拟可能不存在,因为它只会将行为引入 Web 应用程序,如果线程模型被重新配置,或者如果请求浏览器的模式发生变化。浏览器可以使用同一个连接发出多个请求,或者关闭请求之间的连接。
为了使用自定义的每个请求扩展 request
对象,我可能会研究 acceptor
的子类化(文档中描述了如何做到这一点) .我的自定义 acceptor
将具有 process-connection
通用函数的自定义方法,该方法将创建扩展/子类 request
对象,其中包含我想要的额外内容放入请求
。
另一种方法是使用一些全局弱哈希将 request
对象绑定(bind)为附加信息的键。
关于webserver - hunchentoot session- v. thread-localized values (ccl),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45683364/
SBCL 可以成功加载 hunchentoot。然而,CCL 报道称: ? (ql:quickload :hunchentoot) To load "hunchentoot": Load 1 ASDF
在我的 webapp 启动后的某个时候,我开始收到 Can't handle a new request, too many request threads already来自 hunchentoot
我正在使用 Cl-who、Hunchentoot 和 Common Lisp 开发一个需要处理客户订单的 Web 应用程序。因为他们显然可以订购不止一件商品,所以我认为 Checkbox 最有意义。但
如何在项目上启动 Hunchentoot?我查看了 Edi Weitz 的指南,一切顺利,直到安装完成。列出的教程要么被破坏,要么略过实际的服务器使用情况。 我有我的 asdf 文件,用 quickl
我网站的 URI 结构最近发生了巨大变化,我需要将所有旧页面重定向到它们对应的新页面。我有一个所有新旧 URI 对的虚线列表。目前我正在尝试为每个循环定义简单的处理程序: (let ((redirec
我想用 Hunchentoot 创建一个网络应用程序,其工作方式如下;客户端告诉服务器应用程序它对数据库中的某个表感兴趣。当表中发生更改时,服务器会推送此信息。我还没有研究过 WebSockets,因
目前,我正在使用 hunchentoot 为我自己的需要开发 2 个基于 Web 的工具。 在开始 hunchentoot 之前,我想用 let 设置一些特殊变量,以便在 hunchentoot 运行
我使用 hunchentoot 网络服务器,并在那里上传文件。它将文件存储到临时位置 (/tmp/hunchentoot/hunchentoot-XX),并将修改和创建日期设置为现在。如何获取收到的文
我正在学习 common lisp 并尝试使用 hunchentoot 开发网络应用。 使用下面的代码,我无法在浏览器上看到 retro-games 函数定义中定义的页面。我希望它由这个函数生成。 我
我知道如何使用 hunchentoot:post-parameter 在 hunchentoot 中处理单个文件上传,但是当我添加属性时 multiple ,即 .我得到了 (hunchentoot
Hunchentoot/cl-who 页面组合 我正在尝试将 hunchentoot 中的几页放在一起作为实验,但我遇到了意想不到的墙。例如,我有以下模板宏。 (defmacro page-templ
我在 hunchentoot 上启用 CORS 时遇到了一些问题: (hunchentoot:define-easy-handler (one-api :uri *one-endpoint*) (
我使用的是装有 Mac OS 10.5 和 SBCL 1.0.29 的 Intel Mac。我之前在这里做过 1.0 之前的 Hunchentoot 开发,所以我已经安装了它(通过 asdf-inst
我尝试基于 Hunchentoot 实现一个简单的帖子示例。 代码如下: (define-easy-handler (test :uri "/test") () (with-html-output
我正在使用 Hunchentoot 作为一个高流量数据库驱动的网络应用程序,它也依赖于网络套接字协议(protocol)和 http ajax 请求。当我使用 apache 基准测试我的应用程序时 a
Hunchentoot 文档指出: "The method for ACCEPTOR tries to serve a static file relative to it's ACCEPTOR-DO
我正在使用 Hunchentoot(在 SBCL 和 Linux 上)开发一个网络应用程序,通常我只是从 Emacs (SLIME) 运行它,但对于部署,我想要更容易自动化的东西。所以我想弄清楚 AS
我一直使用 define-easy-handler。我现在有一个新生成的 ssl 证书和关联的 pem 文件,但无法弄清楚 d-e-h 的 ssl 等价物是什么。 例如,我有: (hunchent
我正在编写一个需要 hunchentoot 网络服务器的网络应用程序。我几乎没有关于 hunchentoot 或任何 Web 服务器的工作知识,我想知道我用 Common Lisp 编写的应用程序如何
我已经用 ssl 设置了一个 hunchentoot 服务器。我希望将常规 http 请求重定向到 https。 似乎是 hunchentoot:define-easy-handler 的某种组合和
我是一名优秀的程序员,十分优秀!