【发布时间】:2018-10-23 10:53:36
【问题描述】:
我创建了一个登录页面,该页面应该发布用户名和密码。我用过axios。我将这个用户名和密码包装到一个对象中(检查下面的代码),但提交后,我收到“201”响应。是的,它正在工作,但在 Chrome 浏览器 -> 网络 -> 请求有效负载中显示如下
{"name":"[object Undefined]","password":"[object Undefined]"}
这是我的代码
class UserLogin extends React.Component {
createUser = () => {
let getLoginName = document.getElementById('user_name');
let getLoginPassword = document.getElementById('user_pass');
let postData = {
name: toString(getLoginName),
password: toString(getLoginPassword)
}
axios.post('https://reqres.in/api/users', postData)
.then((function (response) {
console.log(response);
}))
.catch((function (error) {
console.log(error);
}))
}
这是我的 API
{
"email": "xxx@yyy.com",
"password": "helloworld"
}
【问题讨论】:
-
请发布您的
toString()方法。另外:console.log(getLoginName, getLoginPassword)。字段存在吗?它向您展示了元素吗? -
不工作@FrankerZ.. 是的,这些文件是存在的......如果我像字符串一样提供硬编码的用户名和密码,它的工作
-
不工作是什么意思?我问的任何事情都不会改变任何事情......他们正在记录功能,旨在为我们提供有关您的问题的更多信息。在
let getLoginPassword = document.getElementById('user_pass');之后添加console.log()行,然后从控制台发布结果输出。此外,发布您的toString()方法。 -
不幸的是,没有合适的minimal reproducible example,我投票决定将此问题作为题外话结束。请添加我提到的详细信息,以便我们为您提供适当的帮助。
-
请,缩进您的代码并在整个代码中始终使用indenting style。这样做会使它更加更容易阅读/维护。作为副作用,为您放置在 Stack Overflow 上的代码这样做会使您更有可能让人们对您的帖子进行投票,并使人们更有可能花时间回答您的问题。您选择哪种风格并不重要(尽管在 IMO 中,有些风格比其他风格更适合 JavaScript)。但是,选择一个并将其一致地用于单个项目中的所有代码。
标签: javascript reactjs axios