我正在尝试开发一个 Web 服务,我们计划使用该服务在我们的应用程序中托管许多服务。
我们计划使用 Sun 的 HTTPService
来开发相同的服务。我对此几乎没有疑问:
我们可以使用它开发一个安静的网络服务器吗?
数据可以作为字节流来回传递到服务吗?
有什么我必须警惕的具体潜在陷阱吗?
大多数都是一个很好的实现示例,这样我就能一开始就得到正确的设计。
我现在已经有了一个示例服务。我可以通过哪些方法进行测试?
提前非常感谢。
最佳答案
1)我们可以用它开发一个安静的网络服务器吗? 不存在restful webserver这样的概念。您需要在 Web 服务器上托管您的 Web 服务。 Web 服务器会将传入的 http/https 请求路由到您的应用程序。您应该正确配置 web.xml 以访问 Web 服务。通常,任何 Web 服务框架中都有一个顶级 servlet,它处理特定 url 处的所有传入请求,并将请求传递给 Web 服务实现类。
2) 数据可以作为字节流来回传递到服务吗? 是的,您可以将输入流作为服务的输入参数。您可能必须使用多部分表单/混合参数。这是一个例子:
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response createFile(@FormDataParam("fileConfig") String strFileConfig,
@FormDataParam("file") InputStream file);
3) 有什么我必须警惕的特定潜在陷阱吗? 确保正确遵循 REST 规范。您可以很好地代表您的实体并创建正确的引用网址。在同步和异步服务之间进行选择。任何耗时的操作都应该公开为异步服务。
4) Most imp 是一个很好的实现示例,这样我就能一开始就得到正确的设计。 这取决于您的要求。正如第一个答案中提到的,设计很简单。正确配置顶级 servlet、Web 服务类,遵循其余规范。
5) 我现在已经有了一个示例服务。我可以通过哪些方法进行相同的测试? 您可以使用不同的工具进行测试,例如JMeter、chrome Rest插件等。
希望对你有帮助!
关于java - Java 中的 HTTP 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16872428/