用于web和移动客户端的SpringRESTAPI

用于web和移动客户端的SpringRESTAPI,spring,rest,jsf,controller,backend,Spring,Rest,Jsf,Controller,Backend,这是我关于StackOverflow的第一个问题,希望有人能帮助我。:-) 我计划用SpringRoo构建一个web应用程序(后端)。对于后端,我将使用Spring和Hibernate/JPA。在未来,我将实现一个web客户端(JSF/Primefaces)、一个移动客户端(Android)和一个Windows应用程序。 使用SpringRoo,可以轻松创建具有域类、存储库和服务的分层体系结构。这部分很有趣 但现在我正在考虑远程处理,以及如何将所有客户端(web、移动、windows)与我的后端

这是我关于StackOverflow的第一个问题,希望有人能帮助我。:-)

我计划用SpringRoo构建一个web应用程序(后端)。对于后端,我将使用Spring和Hibernate/JPA。在未来,我将实现一个web客户端(JSF/Primefaces)、一个移动客户端(Android)和一个Windows应用程序。 使用SpringRoo,可以轻松创建具有域类、存储库和服务的分层体系结构。这部分很有趣

但现在我正在考虑远程处理,以及如何将所有客户端(web、移动、windows)与我的后端连接起来

1.)对于客户端和后端之间的远程处理,您更喜欢什么?SOAP Web服务或REST-API(例如,使用JSON)。

2.)如果REST-API:验证/登录功能的API应该是什么样子?REST是面向资源的,但如何使用REST API实现身份验证?

目前,我认为REST-API是一个好主意。因为我使用的是spring,所以很容易创建一个支持REST的SpringMVC控制器。但是这是为所有三个设备实现RESTAPI的正确方法吗?例如,web客户机应该用JSF和Primefaces实现,我不使用SpringMVC作为web层

3。)我是否可以使用SpringMVC控制器构建RESTAPI(与web层中的JSF一起)?或者有更好的方法吗?1。)对于客户端和后端之间的远程处理,您更喜欢什么?SOAP Web服务或REST-API(例如,使用JSON)。

我对SOAP-WS没有太多的经验,但我对使用JSON的RESTAPI有很多经验。有许多针对移动、web和服务器端客户端的实现,它们的实现相当简单

2.)如果REST-API:验证/登录功能的API应该是什么样子?REST是面向资源的,但如何使用REST API实现身份验证?

如果您已经在使用spring,我建议使用spring安全性保护您的API。您可以使用spring安全性,即使您的API实现最终没有使用spring MVC。有很多方法可以使用spring安全性保护rest API,但我认为最简单的方法是将每个请求的基本auth头发送到一个安全URI

3。)我是否可以使用SpringMVC控制器构建RESTAPI(与web层中的JSF一起)?还是有更好的方法?

SpringMVC控制器可以正常工作,但我建议使用RestEasy或Jersey。我发现它们更灵活

1.)对于客户端和后端之间的远程处理,您更喜欢什么?SOAP Web服务或REST-API(例如,使用JSON)。

我对SOAP-WS没有太多的经验,但我对使用JSON的RESTAPI有很多经验。有许多针对移动、web和服务器端客户端的实现,它们的实现相当简单

2.)如果REST-API:验证/登录功能的API应该是什么样子?REST是面向资源的,但如何使用REST API实现身份验证?

如果您已经在使用spring,我建议使用spring安全性保护您的API。您可以使用spring安全性,即使您的API实现最终没有使用spring MVC。有很多方法可以使用spring安全性保护rest API,但我认为最简单的方法是将每个请求的基本auth头发送到一个安全URI

3。)我是否可以使用SpringMVC控制器构建RESTAPI(与web层中的JSF一起)?还是有更好的方法?


SpringMVC控制器可以正常工作,但我建议使用RestEasy或Jersey。我发现它们更灵活

我同意@mad_fox的观点。此外,我想就您的问题2添加另一个选项。如果不想使用Spring安全性,可以使用Spring和基本java拦截器编写自己的基于令牌的身份验证机制。
您可以将令牌存储在浏览器本地存储器中

我同意@mad_fox的观点。此外,我想就您的问题2添加另一个选项。如果不想使用Spring安全性,可以使用Spring和基本java拦截器编写自己的基于令牌的身份验证机制。
您可以将令牌存储在浏览器本地存储器中

REST对于JSF提供的客户机根本没有用处,因此JSF部分在这个问题上是不相关的。值得一读:REST对于JSF提供的客户机根本没有用处,因此JSF部分在这个问题上是不相关的。阅读食物:谢谢!这证实了我使用REST-API和Spring安全性进行身份验证/登录的想法。现在我必须决定是采用SpringMVC控制器方式还是Jersey方式来实现REST-API。有没有人有将REST-API与JSF/Primefaces结合使用的经验?谢谢!这证实了我使用REST-API和Spring安全性进行身份验证/登录的想法。现在我必须决定是采用SpringMVC控制器方式还是Jersey方式来实现REST-API。有没有人有将REST-API与JSF/Primefaces结合使用的经验?