@Override public Flux<MultiValueMap<String, String>> read(ResolvableType elementType, ReactiveHttpInputMessage message, Map<String, Object> hints) { return Flux.from(readMono(elementType, message, hints)); }
@Override public Flux<MultiValueMap<String, String>> read(ResolvableType elementType, ReactiveHttpInputMessage message, Map<String, Object> hints) { return Flux.from(readMono(elementType, message, hints)); }
@Test public void readFormAsMono() { String body = "name+1=value+1&name+2=value+2%2B1&name+2=value+2%2B2&name+3"; MockServerHttpRequest request = request(body); MultiValueMap<String, String> result = this.reader.readMono(null, request, null).block(); assertEquals("Invalid result", 3, result.size()); assertEquals("Invalid result", "value 1", result.getFirst("name 1")); List<String> values = result.get("name 2"); assertEquals("Invalid result", 2, values.size()); assertEquals("Invalid result", "value 2+1", values.get(0)); assertEquals("Invalid result", "value 2+2", values.get(1)); assertNull("Invalid result", result.getFirst("name 3")); }
private Parameters extractParameters(ExchangeResult result) { Parameters parameters = new Parameters(); parameters.addAll(this.queryStringParser.parse(result.getUrl())); if (MediaType.APPLICATION_FORM_URLENCODED .isCompatibleWith(result.getRequestHeaders().getContentType())) { parameters.addAll(this.formDataReader .readMono(FORM_DATA_TYPE, new ExchangeResultReactiveHttpInputMessage(result), null) .block()); } return parameters; }
@Override public Flux<MultiValueMap<String, String>> read(ResolvableType elementType, ReactiveHttpInputMessage message, Map<String, Object> hints) { return Flux.from(readMono(elementType, message, hints)); }
@Override public Flux<MultiValueMap<String, String>> read(ResolvableType elementType, ReactiveHttpInputMessage message, Map<String, Object> hints) { return Flux.from(readMono(elementType, message, hints)); }