post方法提交报400错误 xhr.send( ( options.hasContent && options.data ) || null );解决办法

问题:post报400错误

三种解决方法

一.参数有没有拼写错误

如:questDescribe写成questDscribe

 $.post("saveQuestion",{topicId:type,quesName:title,questDscribe:content},function (data) {
                    if(data=1){
                        alert("提交成功");
                    }
                });

错误会显示为:
在这里插入图片描述

这个种错误,很简单

二.后台没有确定Post方法、@RequestParam

参考代码

@RequestMapping(value = "saveQuestion",method = RequestMethod.POST)
    @ResponseBody
    public boolean SaveQuestion(@RequestParam String topicId,@RequestParam String quesName,@RequestParam String quesDescribe){
       

三.Jquery版本太高或者太低

一般情况下,不会下很多版本JQuery
可以使用BootCDN在线JQuery调试版本,选择合适的版本
https://www.bootcdn.cn/jquery/

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: xhr.send(options.hascontent && options.data || null); 这段代码的意思是,如果options.hascontent为true,则发送options.data数据,否则发送null。其中,&&表示逻辑与,||表示逻辑或。如果options.hascontent为false,则options.data不会被发送,而是发送null。 ### 回答2: xhr.send( options.hascontent ) 是一个 XMLHttpRequest 对象中的方法,用于向服务器发送请求。 options.hascontent 是一个布尔值,表示请求中是否有请求体。如果设置为 true,则代表请求中包含请求体,通常用于 POST、PUT 等请求方式中,用于向服务器提交数据。如果设置为 false,则代表请求中没有请求体,通常用于 GET 等请求方式中,用于从服务器获取数据。 在调用 xhr.send( options.hascontent ) 方法时,如果 options.hascontent 为 true,则需要在 send 方法中传入请求体数据,例如: xhr.send('data=hello'); 这条代码将会向服务器发送一个包含请求体为 'data=hello' 的请求。 如果 options.hascontent 为 false,则不需要传入请求体数据,直接调用 send 方法即可: xhr.send(); 这条代码将会向服务器发送一个没有请求体的请求。 总之,xhr.send( options.hascontent ) 方法中的 options.hascontent 参数,是用来控制请求是否包含请求体的,而具体的请求体数据则需要根据请求的类型和业务需求来决定。 ### 回答3: XHR 是浏览器提供的一种用于发出 HTTP 请求并获取响应结果的 API,它的 send 方法XHR 中最关键的方法之一。 在使用 XHR 发出请求之前,需要通过 XHR 对象设置一些请求选项,比如请求地址、请求方式、请求头部等。其中有一个名为 options.hascontent 的请求选项,它表示请求体中是否包含实际的内容。 当 options.hascontent 为 true 时,说明请求体中需要包含实际的内容,这通常出现在 POST 或 PUT 请求中。此时,我们可以通过 XHR 对象的 send 方法将请求体中的内容发送给服务器,示例如下: ```javascript xhr.open('POST', '/api/save', true); xhr.setRequestHeader('Content-Type', 'application/json'); xhr.send(JSON.stringify(data)); ``` 上述代码中,我们向 /api/save 发送了一个 POST 请求,并设置了请求头部的 Content-Type 为 application/json。同时,通过 XHR 对象的 send 方法将 JSON.stringify(data) 的结果发送给了服务器。 当 options.hascontent 为 false 时,说明请求体中不包含实际的内容,这通常出现在 GET 或 DELETE 请求中。此时,我们在 send 方法中不需要传递任何参数,示例如下: ```javascript xhr.open('GET', '/api/get?id=1', true); xhr.send(); ``` 上述代码中,我们向 /api/get 发送了一个 GET 请求,并设置了请求参数 id 的值为 1。同时,在 send 方法中不需要传递任何参数,因为请求体中不包含实际的内容。 综上所述,options.hascontent 是一个请求选项,表示请求体中是否包含实际的内容。当它为 true 时,我们需要在 XHR 对象的 send 方法中传递具体的数据;当它为 false 时,我们在 send 方法中不需要传递任何数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值