我正在做一个项目,我请求一个api发布一个项目的详细信息。下面是我试图使用HttpRequest插入body itemstr的代码
public void test(){
newItem item = new newItem(12,12,12,21,"waiwai");
JSONObject itemobj = new JSONObject(item);
String itemStr = itemobj.toString();
System.out.println(itemStr);
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder().uri(URI.create("http://localhost:3001/postMongo")).POST(HttpRequest.BodyPublishers.ofString(itemStr)).build();
}
这是我的newItem类
public class newItem {
int id,wholesaleRate,SellingPrice,stock;
String name;
public int getStock() {
return stock;
}
public void setStock(int stock) {
this.stock = stock;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getWholesaleRate() {
return wholesaleRate;
}
public void setWholesaleRate(int wholesaleRate) {
this.wholesaleRate = wholesaleRate;
}
public int getSellingPrice() {
return SellingPrice;
}
public void setSellingPrice(int sellingPrice) {
SellingPrice = sellingPrice;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public newItem(int id, int wholesaleRate, int sellingPrice, int stock, String name) {
this.id = id;
this.wholesaleRate = wholesaleRate;
this.SellingPrice = sellingPrice;
this.stock = stock;
this.name = name;
}
}
我试图将itemStr作为一个主体发布到本地运行的restful API。我可以使用GET请求检索,但不能发布。
我建议使用GSON
UserEntity user = new UserEntity();
user.setUserName("UserName");
user.setUserAge(18);
Gson gson = new Gson();
String jsonStr = gson.toJson(user);
请参考这篇文章将您的对象转换为JSON:将Java对象转换为JSON与杰克逊
OpenJDK发布了一个连接新的Java11 HTTP客户端和Jackson:http://openjdk.java.net/groups/net/httpclient/recipes.html#jsonPost的方法
ObjectMapper objectMapper = new ObjectMapper();
String requestBody = objectMapper
.writerWithDefaultPrettyPrinter()
.writeValueAsString(map);
HttpRequest request = HttpRequest.newBuilder(uri)
.header("Content-Type", "application/json")
.POST(BodyPublishers.ofString(requestBody))
.build();
return HttpClient.newHttpClient()
.sendAsync(request, BodyHandlers.ofString())
.thenApply(HttpResponse::statusCode)
.thenAccept(System.out::println);
希望Jackson能很快实现BodyPublisher
本身,而不必先序列化为字符串。。。
问题内容: 我正在使用Symfony 2开发一个项目,我已经建立了一个捆绑包来处理我的所有数据库服务,这些服务来回传递JSON数据。 我的问题/问题: 是否可以发布简单的JSON对象?目前,我通过给对象起一个名字来欺骗我的ajax调用的普通表单帖子,如果我不给它起一个名字,我似乎无法从Symfony请求对象中获取数据。 我希望能够使用一个服务包来处理来自AJAX调用或常规Symfony形式的数据。
问题内容: 我正在尝试将JSON发布到WCF服务。json对象包含一个数组。我想知道如何正确绑定到我的数据合同。如果有人可以在这里给我指点,我将不胜感激。目前,我的购物车对象为null 我的服务界面如下所示: 我的客户电话如下 客户电话 我的JSON看起来像这样 问题答案: Fiddler对WCF REST方法的原始请求应如下所示: JSON中的响应如下所示:
问题内容: 我创建了一个需要发布到jersey的json,这是由grizzly运行的具有REST网络服务的服务器获取需要输出的传入json对象。我正在尝试,但不确定如何正确实施。 我有一个在加载时运行此方法的html文件 问题答案: 要将json发送到服务器,首先必须创建json 这就是构造ajax请求以将json作为post var发送的方式。 json现在将在post var中。
问题内容: 我正在尝试使用RestSharp发布以下JSON: 我想我已经接近了,但是我似乎在为 SecurityQuestion 苦苦挣扎(API抛出错误,表明缺少参数,但没有说明是哪个参数) 这是我到目前为止的代码: 我的安全问题类如下所示: 谁能告诉我我在做什么错?还有其他方法可以发布安全性问题对象吗? 非常感谢。 问题答案: 您需要在标题中指定content-type: 还根据方法添加到P
问题内容: 我如何/可以将json对象传递给webapi控制器(POST),并且 没有 类可将其映射到,而是将其作为任意内容来处理? 因此,如果我像这样从客户那里传递消息: 数据是这样的: 我的控制器将能够解析吗?下次数据可能与该签名不匹配(例如: 在我的控制器中,我尝试过: 和: 和(因为这实际上是与mongo数据库一起使用): 但是看起来对象映射器想要映射到字符串以外的其他东西… 问题答案:
我有一个Java动态web项目(部署在本地应用服务器Tomcat 7上),它使用Jersey创建REST API。 我不使用任何构建自动化工具(所以我的库被添加到构建路径中,servlet被插入到web.xml文件中)。 我正在使用的库包括: 我的web.xml如下: 应用程序正在与MySQL数据库交互。场景如下:数据库包含一个名为user的用户帐户表。列是id、name、username和密码。