gpt4 book ai didi

java - RESTful - 在 Queryparam 中获取 null

转载 作者:太空宇宙 更新时间:2023-11-04 13:59:48 25 4
gpt4 key购买 nike

获取空响应。

这是我的代码

package com.javacodegeeks.enterprise.rest.jersey;

import java.util.Date;

import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;

@Path("/")
public class HelloWorldREST {

@POST
@Path("/submitValue")
public Response responseMsg(@QueryParam("name") String name,@QueryParam("email") String email,@QueryParam("date") Date date) {
String output = date+email+name;
System.out.println(output);

return Response.status(200).entity(output).build();
}

}

这是对 URL 的调用

Ext.Ajax.request({
method : 'post',
url: 'rest/submitValue/',
//success: someFn,
//failure: otherFn,
params:
{
name: Ext.getCmp('name').getValue(),
email : Ext.getCmp('email').getValue(),
date : Ext.getCmp('date').getValue()

}
});

我检查了一下,当我发送此请求时,参数已通过......所以它们的值不可能为空。

最佳答案

首先,您的休息方法即 HelloWorldREST.responseMsg 不应发布,因为它没有 requestBody。应该是get方法。永远记住,如果您想将数据作为查询参数(url param)发送,请始终使用 get,如果您想在请求正文中发送数据,请使用 POST。

现在第二件事,因为您想将数据作为查询参数发送,所以您可以通过两种方式完成。确保您从查询 Ext.getCmp('name').getValue() 中获取值,您可以在 Chrome 开发者控制台中检查它们的值。

Ext.Ajax.request({
url: 'rest/submitValue?name=' + Ext.getCmp('name').getValue() + '&email=' + Ext.getCmp('email').getValue() + '&date=' + Ext.getCmp('date').getValue(),
method: 'GET',
success: function (response) {

},
failure:function(response){

}
});



Ext.Ajax.request({
url: 'rest/submitValue?name=' + Ext.getCmp('name').getValue() + '&email=' + Ext.getCmp('email').getValue() + '&date=' + Ext.getCmp('date').getValue(),
method: 'GET',
params: {
name: Ext.getCmp('name').getValue(),
email : Ext.getCmp('email').getValue(),
date : Ext.getCmp('date').getValue()
}
success: function (response) {

},
failure:function(response){

}
});

关于java - RESTful - 在 Queryparam 中获取 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29419558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com