reactjs - Axios 不向服务器端控制器发送标头
问题描述
我对 React Native 世界比较陌生。我在尝试将参数从 React Native 发送到 Spring Boot Controller 时遇到了问题。即使调用了控制器上的方法,参数也始终为空。
这是我的反应代码(带有要发送的硬编码值):
login(user) {
return axios.get(API_URL + 'login',
{ email: 'test', password: 'test' })
.then(response => {
console.log('function called')
这是控制器:
@RequestMapping(value = {"/login"}, method = RequestMethod.GET)
public ResponseEntity<?> login(String email, String password) {
return new ResponseEntity<>(userServiceImpl.getUserByEmail(email).get(), HttpStatus.OK);
}
现在,在调试控制器时,我看到该方法被调用,但它接收到 null。我想我在前端部分做错了,但找不到问题所在。
解决方案
我认为您应该使用 post 而不是 get 或者应该尝试在链接中发送参数(即 login/email/:email)或查询(即 login?email=test)而不是使用 get 发送请求正文。你不能为了安全起见,t在url中发送密码作为参数。所以你应该使用post。
推荐阅读
- c# - TimeZoneInfo SupportsDaylightSavingTime 没有返回我所期望的,为什么?
- wordpress - 两个 WordPress Multisite 安装在不同的子目录中
- python - 在python中将字符串更改为大写
- javascript - 导航到另一个页面后保持下拉菜单打开
- javascript - 递归求和二维数组
- java - 有没有办法让多个 jTextArea 可以在 Java-Netbeans 中共享滚动窗格?
- javascript - 为什么多行链接在jquery中起作用?
- php - Laravel 在路由不存在时返回 MethodNotAllowedHttpException
- c - 我可以将 C11 `_Atomic` 关键字应用于枚举类型吗?
- json - JSON 格式疑难解答