我正在使用SWF上传器上传文件。我在服务器端使用Java。
Flash自动使Java Session无效。到目前为止,SWF团队尚未找到任何修复程序。
经过一些搜索,我找到了此链接,该链接讨论了在ASP中处理此问题的想法。
在基本的PHP中,我们将会话ID作为POST参数传递,并手动恢复会话。
在ASP.Net中,我们还发布会话ID,并使用Global.asax在还原会话之前捕获值,并动态添加正确的cookie。
像那样,我们是否可以选择使用Java还原会话?
我还阅读了这篇帖子。但是我不明白他们在说什么。也许是因为,我在Java会话中听起来不够。
特别是upload_url: "Controller?action=33&JSESSIONID=<%=request.getSession().getId()%>",
这条线。他在那条线上取得了什么成就。什么是Controller
&action=33
。
从客户端或服务器端恢复会话的任何建议都将更有价值!!
谢谢!
如果我正确阅读了链接的SO问题,则问题不是会话ID无效,而是服务器对待Flash对象的方式:它被视为附加客户端,而不是浏览器窗口其余部分的一部分。因此,创建了2个单独的会话,导致ID在上传时不同或为null。
解决方案是手动查找正确的会话ID,或强制服务器将正确的ID分配给新会话。这是通过将jsessionid作为变量转发到Flash,然后将其作为GET参数添加到HTTP上传请求中来完成的,因此可以在服务器上检索它,并且可以使用它来查找正确的会话。
在该示例中,作者使用Controller
servlet作为名称,并且action=33
可能被用来在该servlet
上调用某些方法。这特定于此特定应用程序,但对您的解决方案并不重要。
对您而言重要的是字符串的结尾: &jsessionid=<%=request.getSession().getId()%>
该JSP代码实质上将Java会话ID添加到包含上传请求URL的变量中。您可以使用普通Java或有权访问正确会话ID的任何其他语言来执行此操作-
重要的是首先将其传输到Flash插件, 然后 将其添加到上传请求中, 然后 再次发送回服务器, 然后
用于查找或创建用于处理上传的正确会话ID。
这是作者用来创建新会话cookie的代码:
if (request.getParameter("JSESSIONID")!=null) {
Cookie userCookie = new Cookie("JSESSIONID", request.getParameter("JSESSIONID"));
response.addCookie(userCookie);
}
我读了很多关于JWT的书,以及如何通过JWT创建“无状态”会话。我理解的要点是因为签名 我不明白的是,如果您的用户需要注销,或者您需要在过期之前使会话无效,会发生什么情况? 从技术上讲,您可以指示浏览器从客户端删除它,但您不能确定这是否真的发生了。令牌本身在技术上仍然有效,如果没有遵循您的删除说明,它仍然可以使用。 这种理解正确吗?如果是这样,这难道不是客户端会话管理的一个巨大错误吗?除了让服务器
iam使用openam与Tomcat7一起使用,下面的行总是产生异常SSOTokenManager manager=SSOTokenManager.getInstance();SSOToken SSOToken=manager.createssotoken(请求); 无效的会话id AMSSOProvider:09/18/2012 01:18:01:882 PM EEST:Thread[http-
我想在一些计算机之间建立点对点连接,这样用户就可以在没有外部服务器的情况下聊天和交换文件。我最初的想法如下: 我在服务器上制作了一个中央服务器插座,所有应用程序都可以连接到该插座。此ServerSocket跟踪已连接的套接字(客户端),并将新连接的客户端的IP和端口提供给所有其他客户端。每个客户端都会创建一个新的ServerSocket,所有客户端都可以连接到它。 换句话说:每个客户端都有一个Se
我刚刚开始学习Java。我修改了服务器/客户端通信程序的客户端代码,为客户端创建了两个线程,一个是用于接收用户输入的主线程,另一个是用于接收服务器响应的inputThread。我确信服务器已经向客户机发送了响应,但是,在客户机上没有获得响应消息。 这是我的代码。有谁能帮我弄明白吗?谢谢
前面的章节介绍了所有 Redis 的重要功能组件: 数据结构、数据类型、事务、Lua 环境、事件处理、数据库、持久化, 等等, 但是我们还没有对 Redis 服务器本身做任何介绍。 不过, 服务器本身并没有多少需要介绍的新东西, 因为服务器除了维持服务器状态之外, 最重要的就是将前面介绍过的各个功能模块组合起来, 而这些功能模块在前面的章节里已经介绍过了, 所以本章将焦点放在服务器的初始化过程,