本问题已经有最佳答案,请猛点这里访问。
问题陈述
我是Spring/Rest应用程序的新手,在Object中有数据。
现在,我需要将这些数据传递到API。
下面是为一张唱片附上的卷发样品-
curl --request POST \
--url http://eventapi-dev.wynk.in/tv/events/v1/event \
--header 'cache-control: no-cache' \
--header 'content-type: application/json' \
--header 'postman-token: 67f73c14-791f-62fe-2b5a-179ba04f67ba' \
--data '{"name":"hotel california","createdAt":1505727060471,"steamUrl":"https://www.youtube.com/watch?v=lHje9w7Ev4U"}'
在终端中点击curl url后得到的响应是正常的
Can I anyone guide me how to write the Code in Java.
简单的Java?熟悉Java.NET.* API。
请阅读为什么"有人能帮我吗?"不是真正的问题吗?在试图问更多问题之前。
您必须使用与此处描述类似的东西,maily bu使用HttpURLConnection和URL。
在这里,您注意到在post场景中,JSON数据作为String传递。
然后,您还可以按照这个问题使用该API了解更多的答案。
您还可以使用ApacheHTTPClient并在其站点上浏览示例。
这里也有Apachehttpclient示例。
我不确定是否应该将这些网站上的相关代码样本复制粘贴到这个答案上(为了完整性),但这个想法非常简单,您必须找到一个API来帮助您构建和执行一个REST请求。
另一个API在-tr的答案中列出?n?我们有很多其他的Java API在市场上可用。
可以使用okhttp(https://github.com/square/okhttp)调用此API。例子:
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType,"{
\t"name":"hotel california",
\t"createdAt":1505727060471,
\t"steamUrl":"https://www.youtube.com/watch?v=lHje9w7Ev4U"
}");
Request request = new Request.Builder()
.url("http://eventapi-dev.wynk.in/tv/events/v1/event")
.post(body)
.addHeader("content-type","application/json")
.addHeader("cache-control","no-cache")
.addHeader("postman-token","08af0720-79cc-ff3d-2a7d-f208202e5ec0")
.build();
Response response = client.newCall(request).execute();
@tran duc hung如何将我的对象传递给这个。
@我想答案很清楚,你需要通过json在线-RequestBody body = RequestBody.create(..., ...)或者你的问题其他什么?或者,您可以使用类似jackson等的JSON API将POJO表示为JSON对象,然后转换为字符串等。
@Jalajchawla U可以使用GSON
URL将是您的终点。这意味着您需要编写一个控制器来响应您的请求,在您的请求中有一些头,如您所见。这些头用于登录并告诉Spring您正在发送JSON文本。另外,如果您检查您的请求,它是"post",所以您还需要通知您的控制器方法。用模型捕获所有数据是一种良好的实践。
所以你的任务应该是这样的。
创建可以响应URL的控制器。
通知您的控制器方法数据是JSON格式。
通知控制器它需要等待"发布"请求的方法。
将数据分析到模型。
让我们试着处理代码。
@RequestMapping(value = events.EVENT, method = RequestMethod.POST, consumes = {
MediaType.APPLICATION_JSON_VALUE }, produces = { MediaType.APPLICATION_JSON_VALUE })
public Event eventAction(@RequestBody Event event){
}
在您的案例中,您需要定义什么是事件。班级应该是这样的。
public class Quota implements Serializable{
private String name;
private Date createAt;
private String url;
// create getter setter
}
现在您就可以响应这个请求了。在控制器方法内部,您可以执行业务逻辑。
哈哈,这完全不同:)不管怎样,也许有人试图复制端点。