REST技术第七步 操作cookie

在response中设置cookie,在JAX-RS的API中需要怎么做?
首先需要用到一个类:javax.ws.rs.core.NewCookie。这个类是继承自cookie类的。
首先资源类则不能返回正常的HTTP实体了。因为这样就没法设置cookie。
举个例子,下面这种方法就没法添加cookie了。

@POST
public String post(){
    return"hello world";
}

如果要操作cookie,就必须返回一个更复杂的对象,这就是javax.ws.rs.core.Response类。
这个类可以设置各种HTTP head,其中就包括了cookie。
Response由于是一个抽象类,所以不能new出来,但是有静态方法。
常见的是 Response.ok,这个方法指定了返回的http状态码为200。
但是这个ok方法返回的并不是Response对象,而是ResponseBuilder。
ResponseBuilder中有cookie方法和builder方法,这样才最终产生一个Response对象。
下面是代码示例:

@GET
public Response service(){
    return Response.ok("hello world").cookie(new NewCookie("A","B")).build();
}

这样在返回的HTTP头中就加上了
Set-Cookie:A=B; Version=1; Discard

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值