rest如何通过增加 jsessionid参数的方式实现session

问题描述

rest是无状态的,想通过url增加jsessionid参数的方式实现session.如:定义接口一:@POST@Produces( { "application/json", "application/xml" })@Consumes(application/json)@Path("/rest/test1")public void test1(@Context HttpServletRequest request) throws Exception {request.getSession().setAttribute("test","test");}问题一:如何在调用/rest/test1的时候取得jsessionid?接口二:@POST@Produces( { "application/json", "application/xml" })@Consumes(application/json)@Path("/rest/test2")public void test2() throws Exception {//取得session //session.getAttribute("test");}问题二:如何在调用/rest/test2/?jsessionid=xxxxxxxx的时候取得session,进而取得test1中写入的信息?

解决方案

只要session id正确传入,你这么做是可以的。问题出在你拼出来的url有问题,rest的url应该按下面这样写:/rest/test2/;jsessionid=2523035A40926EB72E984E0D703A2021如果有别的参数需要传递:/rest/test2/;jsessionid=2523035A40926EB72E984E0D703A2021?name1=value1@POST @Produces( { "application/json", "application/xml" }) @Consumes(application/json) @Path("/rest/test2") public void test2() throws Exception { HttpSession session = request.getSession(false); if(session != null){ session.getAttribute("test"); }}
解决方案二:
你需要URL重写技术request.getSession().getId()得到JSESSIONID

时间: 2024-09-16 17:31:57

rest如何通过增加 jsessionid参数的方式实现session的相关文章

C# 中参数验证方式的演变

原文:C# 中参数验证方式的演变 一般在写方法的时候,第一步就是进行参数验证,这也体现了编码者的细心和缜密,但是在很多时候这个过程很枯燥和乏味,比如在拿到一个API设计文档的时候,通常会规定类型参数是否允许为空,如果是字符可能有长度限制,如果是整数可能需要判断范围,如果是一些特殊的类型比如电话号码,邮件地址等,可能需要使用正则表达式进行判断. 通常,我们一般都是在方法开始的地方进行条件判断,然后抛出合适的异常,这是最普通和通用的做法,但是在.NET中,利用一些语言特性和类库,可以使用一些其他的方

PHP URL参数获取方式的四种例子

 这篇文章主要介绍了PHP URL参数获取方式的四种例子,php url参数解析的4种方法,需要的朋友可以参考下 在已知URL参数的情况下,我们可以根据自身情况采用$_GET来获取相应的参数信息($_GET['name']);那,在未知情况下如何获取到URL上的参数信息呢?   第一种.利用$_SERVER内置数组变量   相对较为原始的$_SERVER['QUERY_STRING']来获取,URL的参数,通常使用这个变量返回的会是类似这样的数据:name=tank&sex=1 如果需要包含文件

jquery的ajaxfileupload增加附加参数的方法

 这篇文章主要介绍了为jquery的ajaxfileupload增加附加参数的方法,需要的朋友可以参考下 直接说方法: 代码如下: $.ajaxFileUpload({ data:{"a":123,"b":456};//附加参数,json格式 });     然后在ajaxFileUpload.js文件中修改两个函数,其实就是一个函数(给函数添加新的参数)   第一处:    代码如下: createUploadForm: function(id, fileElem

js-post提交到模态框,无法获取url地址增加的参数

问题描述 post提交到模态框,无法获取url地址增加的参数 使用的bootstrap,新页面在模态框中显示.使用getquerystring无法获取id,显示null,如果直接location.href=地址,可以获得到id.要怎么做呢,url确定附带id了,但是跳转后却没了 解决方案 ajax请求的吧,这样浏览器地址栏当然没有参数,你的getquerystring肯定是通过location.href或者location.search来分析获取参数的,地址栏都没有参数当然获取不到 用全部变量保

[Spring MVC]-详解SpringMVC的各种参数绑定方式_java

SpringMVC的各种参数绑定方式 1. 基本数据类型(以int为例,其他类似): Controller代码: @RequestMapping("saysth.do") public void test(int count) { } 表单代码: <form action="saysth.do" method="post"> <input name="count" value="10" t

增加外链主流方式的优与劣

增加外链主流方式的优与劣 统计工具不单单是看今天来多少人,而是要看人都是怎么来的,都看了做了些什么,网站点击量最大的是什么等等等.一个好的seoer必定是一个好的分析人员,从数据中看到"真理".个人也是才刚刚尝试去看看数据,感觉有几个方面是值得注意的. 一是ip和pv,主要看pv,它能反映出访问者对网站内容的认可度,pv越大,说明来客对网站兴趣越大,相反,如果pv低,那就要好好反省,找找原因,是内容还是服务还是其他什么因素造成的. 二是看来路域名和所占的比例.搜索引擎来路占的比例是多少

总结一下增加导入链接的方式

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   大家应该都知道,影响搜索引擎排名的因素之一就是链接,这链接包括外部链接和内部链接,大型网站要考虑内部链接,这个比较好掌握,自己的网站当然好改,主要注意相关的链接做好布局,自然点就行了,不用太刻意,如果是小型网站就不用太在乎内链. 其次就是要说外部链接(又称导入链接)的导入策略,对于大型网站和小站通用,google已经在管理员中心说明了的:链接是Google排名算

thinkPHP多域名情况下使用memcache方式共享session数据的实现方法_php实例

本文实例讲述了thinkPHP多域名情况下使用memcache方式共享session数据的实现方法.分享给大家供大家参考,具体如下: 一.问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名.密码在整个网站的各个模块中都是可以登录使用的.各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可.但还存在一个问题,就是用户在这个服务器登录之

Apache集成多个tomcat后是否可用url回写的方式实现session的同步?

问题描述 我在集成多个tomcat的时候,使用jk来集成,同时配置了session的共享,但是只有在cookie不被禁用的时候才可以,一旦禁用了cookie,那么session就不同同步,我知道tomcat的session实现有cookie和url回写的方式,请问是否可以在集群后继续使用url回写的方式实现session同步,如果可以,该如何配置?