原生ajax、JQuryAjax、Axios的发送数据格式与content-type关系及封装My-Ajax

原生AJAX

content-type默认text/plan,发表单或者json数据都需要手动设置数据格式

let xhr=XMLHttpRequest();
	//-----------get方式---------------
    xhr.open('get','url?查询字符串')
    xhr.send()
    
	//----------post方式---------------
    xhr.open('post','url')
    //post --表单数据
    xhr.setRquestHeader('content-type','application/x-www-form-urlencoded;charset=utf-8')
    xhr.send(qs.stringify(post参数js对象))
	//post --json数据
    xhr.setRquestHeader('content-type','application/json;charset=utf-8')
    xhr.send(JSON.stringify(post参数js对象))
	//------------------
	
    xhr.onreadystatechange = function () {
   
        if(readystate==4&&xhr.status==200){
   
            xhr.reponseText
        }

    }
测试不同数据类型和content-type声明的情况:

在send里放js对象,设置头部为表单格式,content-type为表单格式,在请求体的playload会变成
[object,object] 字符串–没有格式,表单格式为将对象转成表单格式数据变成属性名,属性值为空字符串。

在这里插入图片描述

在send里放js对象,content-type为json格式,在请求体只会出现playload里的字符串数据 没有格式,

在这里插入图片描述

在send里放js对象,不设置头部,在请求体的playload会变成[object,object]字符串没有格式,content-type为text/plan 文本类型

在这里插入图片描述

在send里放json数据,不设置头部,在请求体有json数据,content-type为 text/plan。

在这里插入图片描述

在send里放qs数据,不设置头部,在请求体的playload有字符串数据,content-type为 text/plan ---

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值