Reactjs 在我的应用程序中,POST方法在axios中不起作用
我已经在react js中创建了一个按钮,单击它应该使用axios在url上执行POST方法 但是,它却给了我错误 但是,如果我使用POST方法在POSTMAN/Api tester应用程序中使用相同的url,我将得到此响应Reactjs 在我的应用程序中,POST方法在axios中不起作用,reactjs,axios,Reactjs,Axios,我已经在react js中创建了一个按钮,单击它应该使用axios在url上执行POST方法 但是,它却给了我错误 但是,如果我使用POST方法在POSTMAN/Api tester应用程序中使用相同的url,我将得到此响应 { "personalizationID": "1540911564271-271", "resourceName": "guestidentity", "WCToken": "1283%2CxZaF%2B0sJC6%2B1iH7O1216DPA1lYNyfzA44ziA
{
"personalizationID": "1540911564271-271",
"resourceName": "guestidentity",
"WCToken": "1283%2CxZaF%2B0sJC6%2B1iH7O1216DPA1lYNyfzA44ziA4Qn0xDY4TJWdHxUgetyqnU31dp1m5j02Ppumc55lRNLGiRpc9SNQmbTdLSkgfey5cig28PBXtqLNEa2od4Gy2g1OWQ%2Bo0uplGYkSpyLqAnpi3Fnb9DKfiJ8hLzJFDxUh3tpAIH72DupPU1BF59MfZ1qeXGhlpyL2Hcf60GSdpkzKRbJmTO2t2VrV2xNWO9arivV5TxM%3D",
"userId": "1283",
"WCTrustedToken": "1283%2C2XbylA4QPc%2B4NS3yjcscvmLmgY8BKSc%2Fy2b0z9%2BkFYQ%3D"
}
下面是我的代码:
import React, { Component } from "react";
import axios from "axios";
class Login extends Component {
constructor(props) {
super(props);
this.state = {
data: "",
isLoading: false
};
this.click = this.click.bind(this);
}
click() {
this.setState({ isLoading: true });
axios
.post(
"https://149.129.128.3:5443/wcs/resources/store/1/guestidentity",
{}
)
.then(response => {
this.setState({ data: response.data, isLoading: false });
})
.catch(err => {
this.setState({ data: err, isLoading: false });
});
}
render() {
const name = this.state.data && this.state.data.name;
return (
<div>
<button onClick={this.click} disabled={this.state.isLoading}>{'click me'}</button>
{name}
</div>
);
}
}
export default Login;
import React,{Component}来自“React”;
从“axios”导入axios;
类登录扩展组件{
建造师(道具){
超级(道具);
此.state={
数据:“,
孤岛加载:false
};
this.click=this.click.bind(this);
}
单击(){
this.setState({isLoading:true});
axios
.邮政(
"https://149.129.128.3:5443/wcs/resources/store/1/guestidentity",
{}
)
。然后(响应=>{
this.setState({data:response.data,isLoading:false});
})
.catch(错误=>{
this.setState({data:err,isLoading:false});
});
}
render(){
const name=this.state.data&&this.state.data.name;
返回(
{'click me'}
{name}
);
}
}
导出默认登录;
有人能帮我一下吗。如果有人能给我提供见解或指导,我将不胜感激。我不知道我的代码哪里出了问题。我在这里假设
{this.state.data}
是一个对象,你不能把一个对象扔进react代码中,然后期望它呈现出来
如果是数组,那么考虑在返回之前的渲染中做一些类似的事情,假设您的数据是一个数组,每个对象都有一个名称属性:
let dataArray = this.state.data.map((item) => item.name);
然后在您正在使用的代码中使用{this.state.data}
如果它是一个具有属性的对象,那么您可能需要使用console.log('data=',this.state.data)来查找这些属性返回之前,在渲染中执行代码>
然后假设this.state.data.name是您拥有的一个属性,您可以在代码中使用该属性,也可以在返回之前的渲染中使用该属性:
const name = this.state.data && this.state.data.name;
然后在渲染中使用{name}来显示值
另外,您可以在此处清理的另一件事是您的按钮:
<button onClick={this.click} disabled={this.state.isLoading}>
{' click me '}
</button>
{“单击我”}
错误已经消失。但还有另一个错误。我已经更新了问题中的代码和屏幕截图。你能看看吗?这看起来像是你的API证书。我相信它也出现在第一张截图中。我觉得你的代码很好。如果从API返回的数据对象中存在data.name,则应该可以正常运行