0

我正在尝试创建一个接受 JSON 参数并发出 JSON 响应的 RESTful Web 服务。

我想要的是接受对我的 URL 端点发出的 HTTP 请求。就像是,

POST /the/endpoint HTTP/1.1 主机:mywebsite.com

{“姓名”:“您的姓名”,“部门”:“您的部门”}

在后端进行数据库读取,并提供相关参数,例如经理姓名、薪水等作为 JSON 对象作为响应。

最好的方法是什么?我正在考虑为此使用Java servlet?有没有更好的办法?

PS - 我刚刚开始如此详细的答案或教程链接到如何实现它将不胜感激。

谢谢。

4

5 回答 5

0

如果您想使用 Java,我建议您看一下 JAX-RS ... 由于 REST 是一个复杂的主题,这里有一个包含大量信息的 url。http://code.google.com/p/implementing-rest/

于 2013-02-07T10:09:34.080 回答
0

作为一个完整的初学者,我相信无需大量阅读即可实现(几乎)RESTful API 的最佳方法是仅使用 HTML 页面和 HTML 表单以及后端处理来实现 API。

规则是:

  1. 使用<a>标签提供相关资源的链接。(导航)
  2. 使用<form>标签在服务器上启动任何类型的处理操作。(行动)

PUT然后,您可以通过使用渐进式增强来添加执行,的 Javascript AJAX 请求PATCH,而DELETE不是使用POST这三个请求(当然,保留 POST 以在客户端不知道结果 URI 的情况下创建资源),从而使其正确地 RESTful 。

然后,您可以点击并在 Web 浏览器中测试 API!Selenium 之类的工具可以自动执行此操作。

如果您需要提供 JSON,可以在 API 设计和测试后添加,尽管也存在处理 HTML 或 XHTML 响应的库,因此机器可读性不一定需要 JSON。

于 2013-02-07T10:27:15.957 回答
0

如果您在 symfony 中使用 php,请尝试:https ://github.com/FriendsOfSymfony/FOSRestBundle这可以让您非常快速地创建一个真正的 REST 完整服务程序。

于 2013-02-07T10:30:58.660 回答
0

是的,您可以使用 Servlet 和一些用于将 Json 对象编组/解组为 Java 对象的 Json 库轻松地做到这一点。

您可以使用 JacksonGson等Json 库

但是你必须知道 REST 应用程序不仅仅只是处理请求和响应,它还需要处理其他非功能性需求,例如

  • 验证
  • 授权
  • 安全等

当有现成的框架为您提供这些东西时,从 Servlet 从头开始​​构建它是矫枉过正和浪费时间 我最喜欢的是 Spring MVC 3.0

查看他们的项目站点以获取更多详细信息

只是为了向您展示在 Spring MVC 中设置一个是多么容易,请查看下面的教程 Spring 3 REST 教程

如果有帮助,请给帖子评分,干杯。

于 2013-02-07T11:03:05.787 回答
0

Vogella 让我的一天变得非常轻松,因为我在这里使用了一个带有 Eclipse 屏幕截图的超级示例来启动 Web 服务。看看这里

于 2013-02-07T12:54:47.083 回答