Я пытаюсь сделать простой пост-запрос от React (на стороне клиента) на стороне Java-сервера.Вот мой контроллер ниже.
package com.va.med.dashboard.controllers;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.va.med.dashboard.services.VistaServiceImpl;
import gov.va.med.exception.FoundationsException;
@RestController
@RequestMapping("/dashboard")
public class DashboardController {
@Autowired
private VistaServiceImpl vistaService;
@RequestMapping("/main")
String home() {
return "main route";
}
@RequestMapping("/rpc")
String test() throws FoundationsException {
vistaService.myAuth();
return "this is rpc route";
}
@RequestMapping(method = RequestMethod.POST, produces =
"application/json", value = "/vista")
@ResponseStatus(value = HttpStatus.ACCEPTED)
public String getVistaConnection(@RequestBody String ipString, @RequestBody String portString, @RequestBody String accessPin,
@RequestBody String verifyPin) {
System.out.println(ipString);
System.out.println(portString);
System.out.println(accessPin);
System.out.println(verifyPin);
vistaService.connect(ipString, portString, accessPin, verifyPin); // TO-DO populate with serialized vars
if (vistaService.connected) {
return "Connected";
} else {
return "Not Connected";
}
}
}
Ниже приведен мой пост-запрос реагирования
axios.post('/dashboard/vista', {
ipString: this.state.ipString,
portString: this.state.portString,
accessPin: this.state.accessPin,
verifyPin: this.state.verifyPin
})
.then(function (response){
console.log(response);
})
.catch(function (error){
console.log(error);
});
Это также ошибка, которую я получаю.
Failed to read HTTP message:
org.springframework.http.converter.HttpMessageNotReadableException:
Required request body is missing:
Может кто-нибудь пролить свет на это сообщение об ошибке?Я исходил из чистого фона JavaScript, поэтому многие вещи я просто не знаю для Java, потому что он автоматически реализуется внутри языка JavaScrips.
Еще раз спасибо заранее!