ajax post 请求415\ 400 错误

今天用ajax 向后台发送 post请求时,出现了两个问题:

  1, 发送请求后,控制台 返回  Unsupported media type-415(不支持的媒体类型),这时突然想起来,post 请求要设置请求头,于是 写了 xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded.'); 再次发送请求,还是报同样的错误,Unsupported media type-415。查了一下,原来,后端对请求的Content-type 设为了json,  Access-Control-Request-Headers: content-type, 这时要把 content-type 设为json .  xhr.setRequestHeader('Content-Type', ' application/json');

  在设置请求头的时候,还知道了原来第一个参数“Content-Type”, 是不区分大小写的,写成‘content-type’ 也是可以的。当然,设置请求头还要注意以下问题:

    1,它必须在open()方法之后,send()方法之前调用,否则会抛错。

    2,如果设置多个请求头时,可以多次调用setRequestHeader(),后面的设置并不会覆盖掉前面的设置,而是采用叠加的方式。

    3, 两个参数之间用逗号,隔开。 有时我不经意间写成了分号:, 造成错误。

  2,改完之后,发送请求,又报错了 ,但这次是400  bad  request,  400指的是请求无效(请求有语法问题或者不能满足请求),也就是无法获取到资源, 这主要是后台要求传入的数据和前台我们传入的数据不匹配,后台无法解析数据,进行查询,从而返回数据。但我只传递了一个对象。网上搜了一个解决办法:对我们要传递的数据进行json 序列。

var data = JSON.stringify({"page": 0,"limit": 20,"shopId": 1
});

3, 再发送一次请求,终于请求成功。 代码如下:

var xhr = new XMLHttpRequest();
var url ="http://192.168.1.89:8080/server/";
var data = JSON.stringify({"page": 0,"limit": 20,"shopId": 1,"timeType": 3,
});xhr.open("POST", url );
xhr.setRequestHeader('Content-Type','application/json');
xhr.onload = function(){console.log(xhr.responseText) // 这里要用xhr.respnseText 获取数据,我经常给函数传一个data参数,获取数据,造成错误
}
xhr.send(data)      

 

转载于:https://www.cnblogs.com/SamWeb/p/6211134.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270260.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

操作系统:再见CentOS,将于本月底终止维护!

一年前Red Hat宣布将在今年底(2021年)结束提供免费的CentOS Linux(CentOS 已死!"免费"的 RHEL 没了…)。上周五Red Hat再度提醒,CentOS Linux 8将在今年12月31日来到它的生命周期终点…

软件测试与质量分析实验报告,软件测试实验报告

软件测试实验报告 (42页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!14.90 积分江西农业大学“软件测试与质量保证”课程大作业学员 王洪 学号 0133843 实验名称 电子商城测试报告 指导…

电脑技巧:Windows服务器挂载磁盘方法介绍

针对服务器来说,挂在磁盘可以说是服务器运维人员必备的技能,今天小编给大家介绍Windows服务器如何正确挂载磁盘,希望对大家能有所帮助! 1.原系统为Windows 2012挂载了500G的磁盘存储,因业务需要重新安装为Windows 2016…

Win10桌面美化:推荐2款高质量桌面美化工具,值得收藏

目录 工具一:BitDock! 工具二:MyDock 仿Mac美化神器 可能大家电脑的操作系统都是Windows,但是你的桌面是这样的: 而有的人桌面却是这样的: 你看看这差距,有多大呀! 那么,…

设计制作简单计算机,自己设计制作CPU与单片机

自己设计制作CPU与单片机语音编辑锁定讨论上传视频本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!《自己设计制作CPU与单片机》是2014年9月人民邮电出版社出版的图书,作者是姜咏江。中文名自己…

双链表的基本操作---插入,删除,交,并,相邻元素的交换,不相邻元素的交换...

这个链表是带有表头的双链表。实现链表的一些规范操作,初始化,插入,删除等。包括两个头文件list.h,fatal.h,库函数list.c,测试函数testlist.c。头文件放的都是函数声明,库函数list.c放的的函数的…

手机选购:2022年初买手机多大内存合适,看完你就会选了!

2022年初,大家又要开始换手机了,除了考虑品牌、价位之外,大家还要纠结手机内存大小,128GB、256GB和512GB三个版本是目前的主流选择,那么这三个版本应该如何选择呢?其实关于手机内存的大小选择,没…

SSD是什么什么意思?

SSD是什么什么意思? 固态存储技术简称为SSD,一般可以分为二种方式:   基于闪存的SSD:采用FLASH芯片作为存储介质,这也是通常所说的SSD。它的外观可以被制作成多种摸样,例如:笔记本硬盘、微硬盘、存储卡、…

2010年安大计算机录取名单,2021安徽大学考研拟录取名单已公布

当前2021考研已接近尾声,各大研招院校已进入2021考研复试调剂收尾阶段,考研复试拟录取名单正在陆续公布中。拟录取表示已经复试合格,等待正式录取。研究生拟录取后,要经教育部审查通过后才能正式录取,往届生教育部要验…

debian jessie install note

Debian支持非常多的硬件,包括arm/mips/ppc/x86,于是想安装个Debian看看,也不想总屈服在canonical的ubuntu下面。 光盘镜像太多了 纯社区版的安装总是没有想像得那么好,首先安装镜像居然有3个iso,让我们不想刻光盘的同志…

APP技巧:要不要一次性给手机充电到100%最佳

你平时都是怎么给手机充电的呢?一次性把电池电量充到100%?直接充一夜?还是等到电池电量耗尽之后再充电? 实际上,你给手机充电的方式可能是错误的,你的充电习惯可能一直在加快电池报废的速度。 今天就和大家…

MySQL系列: undo和redo工作原理

ACID 首先来讨论事务的四大特性ACID 原子性(Atomicity):事务作为一个整体来执行,要不都执行,要不都不执行 一致性(Consistency):事务必须保证数据库从一个一致状态转移到另一个一致…

robomaster裁判系统服务器,2018裁判系统调试组网完全攻略

1.jpg (52.6 KB, 下载次数: 3)2018-4-15 21:49 上传接下来是几个比较容易弄混淆的点:主服务器程序将会同时监听机器上所有的 IP 地址,所以请保证机器上已经设置了 192.168.0.8 和 192.168.1.2 两个 IP ;学生自定义数据的链路是主控板通过串口…

APP技巧:推荐6款超级实用的APP软件,赶快下载试试吧

目录 01*ONE一个 02*智能修复老照片 03*实用工具箱 04*李跳跳 05*Alook 06*CCleaner 今天小编给大家6款超级实用的App软件,大家赶快下载试试吧。 01*ONE一个 推荐理由:简约的新媒体阅读平台。 生活中往往有太多的碎片化时间,比如等公交、上厕…

《Note --- Unreal 4 --- Sample analyze --- StrategyGame(continue...)》

《Note --- Unreal 4 --- Sample analyze --- StrategyGame(continue...)》 -------------------------------------------------------------------------------------------------------------------------------------------------------------------…

Mysql快照读和当前读

快照读 读取的是记录数据的可见版本(可能是过期的数据),不用加锁 当前读 读取的是记录数据的最新版本,并且当前读返回的记录都会加上锁,保证其他事务不会再并发的修改这条记录   概念说的比较虚,也不好理…

网络知识:快速了解IP地址的概念以及IPV4和IPV6的区别!

‍‍小伙伴们看到上面的机房了吗?成千上万台服务器他们都少不了一个小小的IP地址,每台服务器都配置了一个或多个IP。今天电脑学习微信公众号小编就带大家详细了解下IP地址都是什么?IP地址(Internet Protocol Address)是…

手机投屏到电视,1分钟就能学会,无需下载任何软件,太实用了

生活中,我们玩手机的时候经常看到一些好玩的东西,想分享给亲人,朋友们一起看,无奈手机屏幕太小,大家凑一起看不方便,效果也不好。 如果能把好玩的东西投屏到电视上,那这个问题就迎刃而解了&…