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

错误:请求失败,状态代码为400。邮递员发送与应用程序发送的区别

竺绍辉
2023-03-14
1) url: https://app/login
2) method: POST
3) body
4) x-www-form-urlencoded
5)username: ****,
password: ****,
grant_type: 'password',
client_secret: '****',
client_id: '****'

在函数submit方法POST中,当表单提交时,它不起作用。我有错误:

xhr.js?b50d POST https://app/login 400(错误请求)

错误:请求失败,在createError(createError.js?2d83)处,在xmlHttpRequest.handleLoad(xhr.js?B50d)处,在settle(settle.js?467f)处,状态代码为400

登录

class Login extends Component {
  constructor (props) {
    super(props);
    this.state = {
      email: '',
      password: ''
    }
  }

  handle = (e) => {
    const name = e.target.name;
    const value = e.target.value;
    this.setState({
      [name]: value
    });
  }

  submit = (event) => {
    event.preventDefault();

    const body1 = {
      username: this.state.email,
      password: this.state.password,
      grant_type: 'password',
      client_secret: '****',
      client_id: '****'
    }

    axios({ 
      method: 'post', 
      url: 'https://app/login', 
      body: body1, 
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
      }) 
      .then(res => { 
        if (res.status === 200) {
          console.log(res)
        } 
      }).catch(err => { 
        console.error(err);
      });

  }

  render () {
    return (
      <form action="" method="post" onSubmit={this.submit}>
        <div>
          <label htmlFor="email">Email</label>
          <input type="email" required  name="email"
            value={this.state.email}
            onChange={this.handle}  />
        </div>
        <div>
          <label htmlFor="password">Password</label>
          <input type="password"name="password"
            value={this.state.password}
            onChange={this.handle}  />
        </div>
        <button type="submit" value="Submit">Log</button>
      </form>
    )
  }
}

在邮递员中发送和在应用程序中发送有什么不同?正文的内容转换为字符串?

共有1个答案

秦楚
2023-03-14

Axios以不同的方式处理错误。

找出真正的问题。

您应该使用error.request检查您发出的请求是否有错误

 类似资料:
  • 我有一个带有更新方法的控制器。该方法应在RequestBody中获取产品,但这会导致请求错误。我和邮递员一起发了一封邮件。JSON作为原始JSON发送,请求内容类型为application/JSON。 正文中的JSON是 请求响应不良的原因是什么?JSON似乎格式化正确,当没有正文时调用更新方法。

  • 我正试着在邮递员上打API。API正在服务器上工作,但我没有收到任何数据。以下是视觉图像: 它是回应我与“没有数据”和400错误的要求。

  • 我正在尝试使用Postman访问API,以使用基本身份验证获取响应,但当我提交数据时,它会给我带来可怕的400错误,这显然表明某些标头设置不正确。 以下是API信息: 作为回应,我应该得到一个JSON形式的加密令牌,而不是得到这个错误。 以下是邮差截图: 我错过了什么吗?

  • 我有一个非常基本的webApi构建/运行(相当模板应用程序,仅此而已),以便遵循一个培训视频。GET和DELETE调用工作正常,PUT和POST给出400错误。诚然,对所有这些都很新,所以我正在寻找一些基本的方向,关于如何排除故障。相关的屏幕截图如下,我很高兴提供其他要求。提前谢了。

  • 我正试图从我的android向IIS Web服务发送一个包含一类数据的图像。(C#) 问题是我得到。 图像正在被编码为< code>Base64。然后与其余的类元素一起放入< code>json中。 我猜想Base64在Json中是无效的。因此服务器无法理解。如果我将字符串设置为,则可以接受帖子。 所以问题是,如何使我的在数组中有效?(我尝试了URL.Encode,但没有成功)。 或者应该如何从a

  • 我为Django API项目编写了一个基于angular的客户端应用程序。其中一个endpoint接受application/x-www-form-urlencoded格式的请求,因为它同时包含文件和字符串数据,我很确定它在服务器端工作正常——我已经使用POSTMAN准备了一个application/x-www-form-urlencoded请求: 当然,服务器响应正确,并且已添加文件。以下是确切