【问题标题】:Getting an empty response from axios从 axios 获得空响应
【发布时间】:2020-12-30 19:39:51
【问题描述】:

我有一个问题,我一直得到一个空数组作为我使用 axios 的 GET 操作的响应。 我是 REACT 和 axios 的新手,所以我相信我在这里做错了,谷歌搜索并没有太大帮助。

代码如下:

checkValues =event =>{
    console.log(this.state.username);
    console.log(this.state.password);

    UserDataService.get_username_id(this.state.username).then(Response => {
        this.setState({user: Response.data});
        console.log(Response.data);
    }).catch (e=> {
        console.log(e);
    });

};

所以基本上在这里console.log(Response.data) 我希望得到有效的回复。

我会感谢您的时间和任何形式的帮助。 提前致谢。

这是来自 UserDataService 的代码

import http from "../http-common";

class UserDataService {
  getAll() {
    return http.get("/users");
  }

  get(id) {
    return http.get(`/users/id/{id}`);
  }

  get_username_id(username){
    return http.get('/users/username/{username}');
  }

  create(data) {
    return http.post("/users", data);
  }
}



export default new UserDataService();

这是来自 http-common.js 的代码

import axios from "axios";

export default axios.create({
  baseURL: "http://localhost:8080/",
  headers: {
    "Content-type": "application/json"
  }
});

【问题讨论】:

  • console.log(Response.data) 之后在控制台中得到什么?
  • 空数组,[]
  • 你的UserDataService.get_username_id的实现是什么?
  • 我们需要更多关于UserDataService 的信息。特别是get_username_id() 函数
  • 现在更新了。

标签: reactjs axios crud


【解决方案1】:

这里应该是模板文字

get_username_id(username){
    return http.get(`/users/username/${username}`);
                    ^                           ^
  }

而不是

get_username_id(username){
    return http.get('/users/username/{username}');
  }

// this will call: "localhost:8080/users/username/{username}" for every input

【讨论】:

    猜你喜欢
    • 2021-07-18
    • 2022-01-08
    • 2014-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多