【问题标题】:How change react port to API port?如何将反应端口更改为 API 端口?
【发布时间】:2020-01-29 06:24:20
【问题描述】:

我设计了一个登录页面来做出反应。它在 3000 个端口上运行。点击登录按钮后,应该去API端口检查用户名和密码是否必须帐户。

Screen shot

这是 api 调用:

@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();
    }

}

这是调用 api 端口的 React 代码:

公共静态保存登录(输入:任意){

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 端口。

【问题讨论】:

  • 向我们展示您的代码,以便我们更好地理解。

标签: java mysql api react-tsx


【解决方案1】:

axios 需要完整的 api url。

url = 'http://localhost:8095/api/userlogin/' + input.userId;

【讨论】:

    猜你喜欢
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多