xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded') 出现了415错误
时间: 2023-10-24 22:36:27 浏览: 35
415错误通常表示请求的Content-Type类型不受支持。这可能是因为你设置的Content-Type类型不正确或不被服务器支持。
请确保你设置的Content-Type类型与服务器所需的类型相匹配。如果服务器需要JSON格式的数据,则应该将Content-Type设置为`application/json`,而不是`application/x-www-form-urlencoded`。如果服务器需要表单数据,则应该将Content-Type设置为`application/x-www-form-urlencoded`。
如果仍然遇到问题,请检查你的请求正文,确保它符合服务器所需的格式。
相关问题
bod为空 我传值方式为 xhr.open(method, url) xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded') Object.keys(headers).forEach(headerkey => xhr.setRequestHeader(headerkey,headers[headerkey])) xhr.send(paramsString)
根据你提供的信息,bod为空的原因可能是你在发送请求时没有将请求体传递给服务器。xhr.send()方法只能发送GET请求,不支持POST请求,因此需要将参数作为请求体传递。可以按照以下方式修改代码:
1.使用POST方法发送请求
```javascript
xhr.open('POST', url);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
Object.keys(headers).forEach(headerkey => xhr.setRequestHeader(headerkey, headers[headerkey]));
xhr.send(paramsString);
```
2.将参数作为请求体传递
```javascript
xhr.open('POST', url);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
Object.keys(headers).forEach(headerkey => xhr.setRequestHeader(headerkey, headers[headerkey]));
xhr.send(JSON.stringify({bod: paramsString}));
```
这样,服务器就能正确地解析请求体中的参数了。
'Content-Type': 'application/x-www-form-urlencoded'设置请求头
在前端使用 Ajax 进行 application/x-www-form-urlencoded 参数提交时,可以通过设置请求头的方式指定 Content-Type 为 application/x-www-form-urlencoded。
下面是一个示例代码,展示如何设置请求头:
```javascript
var xhr = new XMLHttpRequest();
var url = "your-url";
var params = "param1=value1¶m2=value2"; // 参数拼接成字符串
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
// 请求完成并成功处理
var response = xhr.responseText;
console.log(response);
}
};
xhr.send(params);
```
在上述代码中,`xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")` 这一行设置了请求头的 Content-Type 为 application/x-www-form-urlencoded。这样服务器就能正确地解析请求参数。
请注意,这是一种常见的用法,但在实际开发中,可能还需要根据具体情况进行其他的处理,比如对参数进行编码、处理错误等。因此,请根据实际情况进行相应的调整。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)