当前位置: 首页 > 知识库问答 >
问题:

通过axios响应JS POST请求

戎志勇
2023-03-14

嗨,我正在通过axios尝试reactjs POST请求,但出现错误,我查看了所有文档,但错误未得到解决。

这是我的错误:

未捕获(promise中)错误:请求在XMLHttpRequest的结算(eval at(bundle.js:4621),:15:15)处的createError(eval at(bundle.js:4615),:18:12)处失败,状态代码为400。手工装载(在(捆js:4609),:77:7处评估)

这是我的Reactjs代码:

import React from 'react';
import RaisedButton from 'material-ui/RaisedButton';
import TextField from 'material-ui/TextField';
import axios from 'axios';
const style = {
 margin: 15,
marginLeft: 600
};
export default class  Register extends React.Component {
 constructor(props) {
   super(props);
   this.onSubmit=this.handleSubmit.bind(this);
}


handleSubmit(e) {
   e.preventDefault();
   var self = this;
   var data = new FormData();
   const payload = {
   id: 111,
   studentName: 'param',
   age: 24,
   emailId: 2
};
data.append("myjsonkey", JSON.stringify(payload));

axios('http://localhost:8083/students',{
   method: 'POST',
   body: data,
   headers: {
    // 'Authorization': `bearer ${token}`,
    'Content-Type': 'application/json'
  }
 })
   .then(function(response) {
       return response.json()
     }).then(function(body) {
       console.log(body);
     });
 }

render() {
   return (
     <form onSubmit={this.onSubmit}>
     <div style={style}>
     <TextField ref='id'
     hintText="Enter Student id"
     floatingLabelText="id"
     />
     <br/>
     <TextField ref='sname'
     hintText="Enter your Last Name"
     floatingLabelText="StudentName"
     />
     <br/>
     <TextField ref='age'
     hintText="Enter your Age"
     floatingLabelText="age"
     />
     <br/>

     <TextField ref='emailId'
     hintText="Enter your Email"
     floatingLabelText="emailId"
     />
     <br/>
     <br/>
     <input type="submit" />


     </div>
         </form>


   );
 }


}

共有3个答案

阎涵容
2023-03-14
  var authOptions = {
     method: 'post',
     url: 'https://exam.com/apps',
     data: JSON.stringify({"name": "ddd"});,
     headers: {
       'Content-Type': 'application/json'
      },
     json: true
    };
 axios(authOptions)
    .then((response) => {
        console.log(response);
        })
    .catch((error) => {
       alert(error)
      })
黄弘盛
2023-03-14

不需要发送表单数据

var data = new FormData();

只需通过axios将json传递给,

axios('http://localhost:8083/students',{
   method: 'POST',
   data : payload,
   headers: {
    // 'Authorization': `bearer ${token}`,
    'Content-Type': 'application/json'
  }
})

简单的方法:

axios.post('http://localhost:8083/students',payload).then(...)
万俟嘉珍
2023-03-14

检查axios api发出POST请求的正确方法是:

const payload = {
  id: 111,
  studentName: 'param',
  age: 24,
  emailId: 2
}

axios({
  method: 'post',
  url: '/user/12345',
  data: payload, // you are sending body instead
  headers: {
   // 'Authorization': `bearer ${token}`,
  'Content-Type': 'application/json'
  }, 
})
 类似资料:
  • 问题内容: 我已经按照npm软件包文档中的建议编写了axios POST请求,例如: 它可以工作,但是现在我修改了后端API以接受标头。 内容类型:“ application / json” 授权:“ JWT fefege …” 现在,此请求在Postman上可以正常工作,但是在编写axios调用时,我遵循 此链接 ,无法完全正常工作。 我经常出错。 这是我的修改请求: 任何帮助是极大的赞赏。 问

  • 问题内容: 我通过JavaScript收到了带有AJAX请求的JSON响应。 这是响应: 我的目标是获取内容: json变量是我的情况下的数据。因此,我尝试了: 但是我得到一个空字符串。 关于如何访问字符串的任何想法? 先感谢您。 问题答案: 您是否首先解析json? 比阅读

  • 这是我第一次尝试进行基本身份验证,但似乎没有任何效果。Axios post未发送数据/控制器未返回响应。我找不到我到底哪里出错了,但我想知道我的http post请求的主体是否必须与requestbody匹配,或者我需要做什么更改才能让UserRepository将表单dat保存在数据库中? }

  • 问题是,我总是收到一个没有任何有效负载的400响应代码。甚至graphql传递了代码200和带有错误块的有效负载。GraphiQl工作正常,这一事实告诉我设置和模式是正确的。所以…我卡住了。也许,有什么想法,去哪里看看? 我不认为它失败是因为cors本身。我的应用程序在 DRF 下运行良好。我决定尝试新的技术并使用GQL覆盖应用程序。 我的起源:http://127.0.0.1:8080 我的Ap

  • 我在我的反应应用程序中有一个axios请求,为此我遵循axios npm文档。 这是我的axios请求 我能够成功记录成功请求的数据。但是,当我故意产生一个错误并尝试将其记录到console.log中时,我不会将结果记录下来,我只是看到了 邮递http://localhost:3000/login 401(未经授权):3000/登录:1 错误:请求失败,状态代码401 login.js:66 在c

  • 我想通过REST API(最好使用Python或Java)发出请求。然而,我想过滤掉结果,因为我不想从响应中得到所有信息。例如,我只需要文本。作为初学者,我很难取得成功。到目前为止,我只在Python上用库“requests”完成了一个请求。有人能帮我吗?