草庐IT

REST-ful

全部标签

spring - 使用 Spring Security 保护 REST 微服务

我正在寻找一种最佳实践和有效的解决方案来保护通过REST与Web客户端应用程序进行通信的多个微服务。当前设置:这些微服务是用Java制作的,带有Spring框架并运行到Docker容器中。客户端是一个Angular2应用程序。我创建了一个新的µService,它将充当“网关”,并成为我的Web客户端和其他服务之间的唯一通信点。我从远程身份验证API检索JWT加密token(我们称之为LOCK)我正在考虑的解决方案:我可以将登录JWT存储到cookie中,然后发送到网关。网关将token嵌入到发送给相关µService的最终有效负载中,如果用户是新用户,则将其存储到数据库中。微服务然后获

java - spring-security oauth2 REST 服务器在错误凭据(400)错误响应中不需要的 Stacktrace

我们有一个基于Oauth2的REST服务器(资源+授权),由spring-security+springweb+jersey提供,用于我们的REST资源。大多数情况都很好,但是当使用错误凭据在用户名-密码流中点击/oauth/token时,我们不仅得到400(按照规范是正确的),而且响应中的整个堆栈跟踪为JSON.我已经搜索、调试和摸索,但无法完全找到罪魁祸首。这可能是Spring安全设置吗?还是Spring网?还是使用jersey映射资源的servlet?示例响应(缩写):$curl-XPOST-v--data"grant_type=password&username=admin&p

java - Spring Data Rest PagingAndSortingRepository AbstractMethodError (RepositoryFactorySupport)

我正在尝试使用SpringDataRest构建一个RestApi,在多次更改我的pom.xml以找到我的项目的兼容依赖项之后,我现在遇到了这个问题:java.lang.AbstractMethodError:org.springframework.data.repository.core.support.RepositoryFactorySupport.getTargetRepository(Lorg/springframework/data/repository/core/RepositoryInformation;)Ljava/lang/Object;从前...我有一个JavaCo

java - 使用内存数据库为 Rest Controller 编写测试

我正在为SpringBootRestController编写测试。这个休息Controller将一些值写入数据库。我想使用Spring为此测试提供的内存数据库。根据thisdoc我必须用@DataJpaTest注释测试类,这会导致此错误:java.lang.IllegalStateException:FailedtoloadApplicationContext在错误堆栈跟踪的更下方,我看到引发了以下异常:原因:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名为“org.springframework

java - 从 Spring REST Controller 返回流

如果可以返回Stream,我很感兴趣来自SpringRestController@RestControllerpublicclassX{@RequestMapping(...)publicStreamgetAll(){...}}可以做这样的事情吗?我试过了,Spring返回的不是流的值。我应该继续返回List? 最佳答案 这也可以用SpringMVCController来完成,但是有几个问题:SpringDataJPARepository的限制,数据库是否支持HoldableCursors(ResultSetHoldability)

java - 通过 Spring MVC 将对象转换为 REST 服务中的 JSON

我正在尝试使用SpringMVC创建一个REST服务,如果我返回一个纯字符串,它就可以工作。我的要求是返回Java对象的JSON字符串。不知道如何通过隐式转换来实现。这是我的代码:StudentService.javapackagecom.spring.schoolmanagement.service;importjava.util.List;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.spri

java - Spring 3.0 REST 实现还是 Jersey ?

我目前正在尝试找出我将在食物链的上游推荐哪种JSR-311实现。我几乎将其缩小到两个选项-Spring3.0具有对REST的native支持-或使用Sun自己的Jersey(ReSTLets可能也是一个选项)。对我来说,实际语法似乎没有太大区别,但可能存在我尚未弄清楚的性能问题。该服务旨在替换一些重型EJB并创建一个RESTfulWeb服务。负载预计会相当高,达到每天10万用户(最大值)的范围,但负载平衡会很严重。感谢您的所有见解。 最佳答案 Spring3不是JSR-311的实现。也许这足以为您回答?如果你想在Spring上使用J

java - Spring Rest - 发送文件列表时出现异常

我正在尝试使用SpringRest发送文件列表,但出现此异常。Couldnotwritecontent:Noserializerfoundforclassjava.io.ByteArrayInputStream它适用于一个文件(ByteArrayResource)。它不适用于文件列表(List)。这是我的代码的重要部分:ListcontentsAsResource=newArrayList();for(MultipartFilefichier:fichiers){contentsAsResource.add(newByteArrayResource(fichier.getBytes()

java - 使用 JAX-RS 处理 REST API 中的错误

任务:我不想在我的堆栈跟踪中接收一般的HTTP500内部服务器错误和客户端上同样可怕的堆栈跟踪,我希望看到我的自定义消息与另一个状态码(例如403),这样开发人员就会更清楚地知道发生了什么。并向用户添加一些关于异常的消息。以下是我的应用程序中更改的几个类:服务器部分:AppException.class-我所有的服务器响应异常(在返回给客户端之前)我想转换成这个异常。有点标准的实体类publicclassAppExceptionextendsWebApplicationException{Integerstatus;/**applicationspecificerrorcode*/in

Spring Data REST - 发布具有关系的新实体

涉及:SpringDataRest2.0.2版我正在尝试将具有@ManyToOne(而不是示例中的@OneToOne)关系的实体(地址)发布到Person,如下所述:EmbeddedEntityreferencesincomplexobjectgraphs但我得到一个jackson错误:org.springframework.http.converter.HttpMessageNotReadableException:CouldnotreadJSON:(wasjava.lang.NullPointerException)(throughreferencechain:Address["p