Я разработал страницу входа, чтобы реагировать. Он работает на 3000 портов. После нажатия кнопки входа в систему он должен go подключиться к порту API и проверить, должны ли ID пользователя и пароль иметь учетную запись или нет.
Снимок экрана
Это API call:
@RestController
@RequestMapping("/api")
public class UserController {
@Autowired
UserRepository userRepository;
@GetMapping("/users")
public List<Users> getAllUsers() {
return userRepository.findAll();
}
@PostMapping("/users")
public Users createUser(@Valid @RequestBody Users note) {
return userRepository.save(note);
}
@PostMapping("/userlogin/{id}")
public Users getUserById(@Valid @RequestBody UserLogin userLogin) {
System.out.println(userLogin.getUserId());
System.out.println(userLogin.getPassword());
if (userLogin.getUserId() != null) {
Users user = userRepository.findUserById(userLogin.getUserId());
if (user != null) {
if ((userLogin.getPassword()).equals(user.getPassword())) {
return user;
}
}
}
return new Users();
}
}
Это код React для вызова API-порта:
publi c stati c saveLogin (вход: любой) {
var obj = JSON.stringify(input);
var url = '/api/userlogin/';
if (input.userId !== null && input.userId !== "") {
url = '/api/userlogin/' + input.userId;
const resultMethod = axios.post(url, obj,
{
headers: {
'Content-Type': 'application/json'
}
})
.then(res => {
return res;
}).catch((e: any) => {
return e.response;
});
return resultMethod;
}
Метод post должен вызывать порт 8095, но он идет через порт 3000.