当前位置: 首页 > 知识库问答 >
问题:

REST API使用POST显示空响应

平学
2023-03-14

代码:

//GetResponse.java
//
@Path("/Location")
public class GetProjectLocationResponse {
   @POST
    @Path("/State") 
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON)
    public Object[] addBuild2( 
           @FormParam("Country") String Country,  
           @FormParam("State") String State) throws UnknownHostException, JSONException
    { 
        System.out.println("ïnside Location");
        Location loc = new Location();
        List<DBObject> basicDBList=(List<DBObject>) loc.getState2(Country, State); //calling state method
        return basicDBList.toArray();
    }
        
//Location.java
//This defines the list of available zipcpdes on the basis on parameter 'Country' and 'States'.
    
    public List<DBObject> getState2(String Country, String State) throws UnknownHostException {
        DB db=ConnectToDB.getConnection();
        DBCollection collection = db.getCollection("location");
        BasicDBObject obj = new BasicDBObject();
        obj.put("Country",Country);
        obj.put("State",State);
        BasicDBObject fields = new BasicDBObject();
        fields.put("_id", 0);
        DBCursor cursor = collection.find(obj, fields);
        List<DBObject> obj1 =cursor.toArray();
        System.out.println(""+obj1);
        return obj1;
    }
}
    
    //index.html
//This file includes parameters 'country' and 'states' to return the JSON response.
<form action="rest/Location/State" method="post">  
Enter Country:<input type="text" name="Country"/><br/><br/>  
Enter State:<input type="text" name="State"/><br/><br/>  
<input type="submit" value="submit"/>  
    

我已经检查了代码,但没有发现任何线索,这是什么错误,导致这个空白响应的POST类型,而它的工作良好的GET类型。我认为它应该适用于POST类型,因为代码规范对这两种类型都是正确的。请在此指定任何问题。提前致谢

共有1个答案

梁华清
2023-03-14

您在这里使用POST是为了一个不同的错误的目的。

使用GET检索数据,使用POST创建所需的实体。来自POST调用的典型响应将是201创建的,并且UI不应该期望来自POST调用的任何响应。

未指定HTTP POST以返回数据,因此不希望它返回。

 类似资料:
  • 我想使用RESTTemplate将POST请求发送到RestAPI。当我执行下面的代码时,它给出了null响应。但是,我得到了http状态代码200 OK。我已经适当地添加了响应模型,所以模型没有问题。甚至,当我将响应类型更改为String时,它也不给我响应。有什么建议吗?

  • 我使用的是junit4提供的restassured。在我的测试方法中,我在mongodb中创建了一个对象,当我运行测试时,它也成功地持久化了。但是我需要存储创建的id,所以我尝试获取响应体。但是< code>response.getBody()。asString()为空。 当我从外部调用restendpoint时,它会返回带有相关字段的响应体,因此rest API没有问题。 如果上述问题没有答案,

  • 唯一的GET方法一直在工作,但PUT、POST和DELETE总是出错。我尝试通过网络更新处理程序映射。也可以在IIS站点下进行配置。最初,我得到了错误的状态代码405作为方法不允许。当我将处理程序映射更改为 开始将415的错误设置为“不支持的媒体类型”。以下是我收到的回复 {StatusCode: 415, ReasonPhrase:'Unsupport Media Type', Version:

  • 我试图在JavaFX WebView组件中显示一个网站,但它只呈现一个空白页面。我已按如下方式设置了所有内容: 主控制器。Java语言 MainViewController.java Main.fxml 和 正如你们所见,我还用系统设置了一些代理设置。setProperty()。我也在没有特定代理设置的情况下尝试了它-我认为这不是问题所在。 我不知道我做错了什么。如果我启动应用程序,我可以看到We

  • 这是HTML的内容:“

  • 这几个月来,我们一直在努力实现这一目标,但现在需要这样做。我需要显示服务器上设置的错误消息,说明出现了什么错误: 服务器endpoint 网状物: 在chrome开发工具中的预览下,我看到消息