在前端的开发中,有时候没有一些库的支持,如jQuery,Axios。那么就只能使用js提供的原生的方法来发送请求。在这里记录一下我的使用

var url = "userInfo.do?p=4";
var xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onload = function (e) {console.log('返回了')
};
xhr.onerror = function (e) {console.error(xhr.statusText);
};
xhr.send("IP=123");

但是这种使用太过繁琐
因此可以使用Promise进行一些封装

function post(url,data){return new Promise((resolve,reject)=>{var xhr = new XMLHttpRequest();xhr.open("POST", url, true);xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");xhr.setRequestHeader('X-Requested-With','XMLHttpRequest');xhr.setRequestHeader('Accept','application/xml,text/xml,*/*; q=0.01');xhr.onload = function (e) {resolve(e)};xhr.onerror = function (e) {reject(e)};xhr.send(data)})
}
post('userInfo.do?p=4',"IP=123").then(res=>console.log('成功了'+res))

由于这里使用请求类型是application/x-www-form-urlencoded 因此send()方法中发送的请求内容
就需要是类似这种的name=js&age=18

【JavaScript】使用XMLHttpRequest发送网络请求相关推荐

  1. 网络编程-JavaScript中发送网络请求汇总

    文章目录 1.前后端分离优势 2.HTTP协议的解析 2.1 HTTP的介绍 2.2 HTTP的组成 2.3 HTTP的版本 2.4 HTTP请求方式 2.5 HTTP请求头字段 2.6 HTTP响应 ...

  2. vue如何发送网络请求,使用axios事半功倍!

    目录 一.axios使用 1.支持多种请求方式: 2.安装 3.简单使用实例 4.发送并发请求 5.全局配置 二.axios的实例 1.为什么要创建 axios的实例呢? 2.使用 三..axios模 ...

  3. Fetch发送网络请求

    1. 文档 https://github.github.io/fetch/ https://segmentfault.com/a/1190000003810652 2. 特点 fetch: 原生函数, ...

  4. axios发送网络请求

    网络模块封装 选择什么网络模块 传统的Ajax 缺点:配置和调用方式等非常混乱 jQuery-Ajax 缺点:在Vue整个开发中都是不需要使用jQuery的 axios axios 功能特点: 在浏览 ...

  5. 微信小程序中发送网络请求

    文章目录 小程序项目 app.json pages/index/index.html pages/index/index.wxss pages/index/index.js 发送网络请求 网络请求函数 ...

  6. OkHttp3 发送网络请求服务器

    前言:应用程序需要发送网络请求服务器的接口,可使用OkHttp 3发送请求获取服务端数据 GitHut地址 Step 1:申请网络请求的权限:在manifests层的AndroidManifest.x ...

  7. python 网络接口 开发_Python自动化学习笔记(八)——接口开发、发送网络请求、发送邮件、写日志...

    1.接口开发(flask模块) Python自动化学习笔记(七)接口开发部分的内容补充 1.1参数为json格式: flask.request.is_json #判断参数是否是json格式 flask ...

  8. Python自动化学习笔记(八)——接口开发、发送网络请求、发送邮件、写日志...

    1.接口开发(flask模块) Python自动化学习笔记(七)接口开发部分的内容补充 1.1参数为json格式: flask.request.is_json #判断参数是否是json格式 flask ...

  9. Python发送网络请求(requests)

    Python发送网络请求(requests) Python已经是广泛使用的脚本语言了,我们可以使用requests库进行网络请求. 在PyPI中搜索requests,就可以找到这个库 1. 安装 pi ...

最新文章

  1. android 更新 18个月,MIUI迎接史上最大更新:18个月内绝不卡顿,友商羡慕!
  2. Python自动化运维——文件内容差异对比
  3. 高中计算机计划,高中信息技术教学计划
  4. Java设计模式笔记(3)抽象工厂模式
  5. Python 输出HTML实体字符(#x***转html,html符号乱码,中文乱码)
  6. 登陆窗体相关的控件 1124
  7. 数据结构:列表(双向链表)的了解与示例
  8. django定义Model中的方法和属性
  9. 传统营销与社会化营销的差距
  10. rdd分组聚合算子xxByKey,xxBy
  11. Linux命令----系统目录结构
  12. Django:学习笔记(4)——请求与响应
  13. 数学建模系列-预测模型(一)---神经网络模型
  14. Ubuntu 16.04 双网卡 同时上内外网
  15. 学习Java还是学习大数据,哪个好?
  16. ios真机调试出现“不受信任的开发者”解决方法
  17. 没有会员wps合并多个sheet_WPS隐藏黑科技:合并工作簿再也不用复杂操作了,一键就搞定!...
  18. Vscode,Open a folder or workspace…(File -> Open Folder)解决方案
  19. Sails基础之Models层的config/datastores配置
  20. ffmpeg js转换音频_webRTC使用ffmpeg.js将webm转换为mp4

热门文章

  1. jsp调用其他jsp中的js代码
  2. DM8配置数据守护集群
  3. windows cmd下使用copy 命令,利用通配符 * 进行匹配后复制后的文件只有1k?xcopy直接跳过询问目录还是文件名该怎么实现?
  4. 30个珍藏的程序员超实用自学网站,干货!
  5. DirectShow之事件通知
  6. 下载网页视频简单的办法之一
  7. win10如何找计算机管理员密码,Win10如何查看和管理Edge浏览器保存的密码?
  8. 解决Windows 10 ‘.\wsvd.mexw64‘ 无效: 找不到指定的模块问题
  9. qt的icon程序图标下载工具
  10. 百度2021校招C /PHP研发工程师笔试卷(第一批)