我正在尝试使用 Citrix Netscaler 检查特定 cookie 的存在。看起来应该很简单,但到目前为止我还没有成功。
具体来说,我想在响应者策略中检查 cookie 的存在,如果找不到 cookie,则将用户重定向到特定页面。然后,该页面上的 JavaScript 脚本将创建 cookie,以便下次访问时不会触发重定向。这个想法是将用户重定向到带有消息的页面,但仅在 cookie 到期内一次。
我对设置 Responder Policy 和 Actions 感到满意,但无法让 cookie 检查按预期工作。我可以在 Firefox 开发人员视图中看到 cookie 是按预期创建的。
我正在使用 10.5 版的 Netscaler MPX
我进行了广泛的搜索,但没有找到有效的答案,或者至少我理解并且可以应用。我还搜索了 Citrix Netscaler 社区并通读了 NS 文档。
到目前为止我能想出的最接近的方法是
!HTTP.REQ.COOKIE.CONTAINS("myCookie")
我原以为会看到 cookie 的存在,并且不会因为!
. 我尝试.NOT
了语句的结尾而不是语句的结尾,!
但没有运气。
我测试了正在通过使用读取cookies
HTTP.REQ.COOKIE.LENGTH < or > some arbitray value
我可以看到它已正确评估并且逻辑按预期工作。根据文档HTTP.REQ.COOKIE
返回一个名称/值列表,其中包含 HTTP Cookie 标头的内容,因此 .CONTAINS
如果找到 cookie 名称,我希望评估为 true。情况似乎并非如此。