首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >方法类型为DELETE时如何使用Ext.Ajax.request传递参数

方法类型为DELETE时如何使用Ext.Ajax.request传递参数
EN

Stack Overflow用户
提问于 2012-12-19 21:11:42
回答 2查看 3.9K关注 0票数 3

我正在尝试使用Ext.Ajax.request方法发送,以删除服务器上的一些数据。我的请求方法如下:

代码语言:javascript
运行
复制
Ext.Ajax.request({
      url: '/myserver/restful/service/delete',
      method: 'DELETE',
      headers: {
        'Content-Type': 'application/json'
      },
      params: {
        userId: 12345
      }
});

在我的jersey服务器上,我编写了如下代码:

代码语言:javascript
运行
复制
@Path("/delete")
  @DELETE
  @Consumes(MediaType.APPLICATION_JSON)
  @Produces(MediaType.APPLICATION_JSON)
  public Response deleteUser(final String userId) {
    System.out.println("user id = " + userId);
    return Response.ok().entity("success").build();
  }

此方法以以下格式打印用户id:

user id = userId=12345

所以我对userId的期望值是12345,但它给了我userId=12345。因为我是新手,所以我不能决定现在该做什么。

有谁能告诉我出了什么问题吗?

EN

Stack Overflow用户

发布于 2012-12-19 22:00:08

@Julian是正确的,你真的不应该有带HTTP DELETE动词的params。

试试这个:

代码语言:javascript
运行
复制
@Path("/delete/{userId} 

然后在你的方法内部:

代码语言:javascript
运行
复制
@PathParam("userId") String userId

然后,当你调用你的服务时,把你的url改成:delete/(userId) (去掉括号)并去掉参数。

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13953181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档