我收到以下异常:
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json' not supported
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.readWithMessageConverters(HandlerMethodInvoker.java:653)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveRequestBody(HandlerMethodInvoker.java:612)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:361)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:175)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:440)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:428)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at org.springframework.test.web.servlet.TestDispatcherServlet.service(TestDispatcherServlet.java:65)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.springframework.mock.web.MockFilterChain$ServletFilterProxy.doFilter(MockFilterChain.java:167)
at org.springframework.mock.web.MockFilterChain.doFilter(MockFilterChain.java:134)
Run Code Online (Sandbox Code Playgroud)
我的测试如下所示:
public class AvailabilityControllerTest extends BaseTest {
@Test
public void createAvailability() throws Exception {
final String createAvailabilityEndPoint = "/api/v4/companies/123/availabilities";
final String responseName = "availabilityResponseDTO";
AvailabilityDTO availabilityDTO = new AvailabilityDTO();
MvcResult mvcResult = mockMvc.perform(
MockMvcRequestBuilders.post(createAvailabilityEndPoint)
.contentType(MediaType.APPLICATION_JSON_VALUE)
.accept(MediaType.APPLICATION_JSON_VALUE)
.content(new ObjectMapper().writeValueAsString(availabilityDTO)))
.andExpect(MockMvcResultMatchers.status().isCreated())
.andReturn();
} …Run Code Online (Sandbox Code Playgroud) 我试图将2个元素彼此相邻放置,其中一个占据屏幕的25%,另一个是有角的router缝机出口,该出口占据了容器的其余部分。使用以下内容时,两个元素都位于屏幕的两侧,中间有空格。**部分是有问题的部分
<div class="container"
fxLayout>
<admin-route-menu fxFlex="25%" fxShow.lt-sm="false"></admin-route-menu>
<router-outlet fxFlex></router-outlet>
</div>
Run Code Online (Sandbox Code Playgroud)
左侧的admin-route-menu标签只是基本的html和css,其中html中有一个mat-list。路由器插座可以根据角度规格采用任何元素。如果有帮助的话,我可以加入admin-route-menu。
我也尝试使用常规的柔韧性盒,但是结果是一样的。
.wrapper {
display: flex;
flex-direction: row;
align-items: stretch;
width: 100%;
height: 5em;
background: #ccc;
}
.wrapper > .wrapper-left
{
background: #fcc;
}
.wrapper > .wrapper-right
{
background: #ccf;
flex: 1;
}
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏,谢谢
我正在构建一个自动完成功能,该功能正在查询后端以获取建议,并且只想获取用户在 Angular 5 表单控件中输入时在一定延迟的情况下进行的最后一个查询。目前我的代码看起来像
this.newVendorForm.get('address').valueChanges.pipe(delay(3000)).subscribe(
address => {
this.geocodeApi.getAddressSuggestions(address)
.subscribe(
response => {
console.log('address suggestions');
console.log(response);
this.addressSuggestions = response;
},
error => {
console.log('error getting address suggestion');
console.log(error);
}
)
}
);
Run Code Online (Sandbox Code Playgroud)
这是可行的,但是它会在 3000 毫秒后对每个输入的字母进行查询。例如,'test' 将在 3000 毫秒后查询 ['t', 'te', 'tes', 'test']。如何在 3000 毫秒延迟后从 valueChanges 中获取最后一次更改(即“测试”),然后进行订阅?谢谢你的帮助
angular ×2
autocomplete ×1
css3 ×1
flexbox ×1
json ×1
mockmvc ×1
rxjs ×1
spring-boot ×1
testing ×1
typescript ×1