聊一聊关于请求那些事儿

车载以太网SOMEIP入门必看:从服务发现到事件订阅,一次搞懂三种核心通信模式(附报文实例) 本文深入解析车载以太网SOME/IP的三种核心通信模式:服务发现、方法调用和事件订阅,通过真实报文实例和仿真工具演示,帮助开发者快速掌握这一关键技术。文章特别强调服务发现机制的基础作用,并详细介绍了Request/Response与Fire&Forget两种方法调用模式的应用场景,为智能汽车网络通信开发提供实用指南。 阅读详情

前端请求

注意:本文只代表个人看法,如有争议请留评论

1.xhr

当大家看到这个的时候肯定是不陌生的,但是再聊xhr之前,我们先来聊聊Ajax

Ajax是什么?
  • Ajax是“Asynchronous Javascript And XML”,即异步Javascript和XML,是指一种创建交互式网页应用的网页开发技术。
  • 客户端可以发送数据到服务端,客户端可以接收并解析服务端传来的数据
  • 可以对页面进行局面刷新
xhr是什么?
  • xhr:XML HTTP Request,是Ajax的核心
  • 常用的三种数据请求方法: get,post,form
xhr数据请求流程
  • 在客户端初始化xhr对象
  • 服务端接收并处理客户端发来的数据,并将结果返回给客户端
  • 客户端接收返回的数据
// 初始化xhr对象
const xhr = new XMLHttpRequest()
//设置接口和参数
xhr.open('get','/api/id?')
//发送请求
xhr.send()
//接收数据
xhr.onreadystatechange = function(){
	if(xhr.readyState == 4){
		//打印返回结果
		console.log(xhr.responseText)
	}
}

2.关于封装好Ajax请求的一些插件或者第三方库

  • jQuery

这个就很熟悉了吧,jq基本上快要被淘汰了,但是不得不说他也封装了Ajax请求,但是jq里面更多的是对dom的操作,大概占80%都是对dom的操作,还有百分之20是对其他的封装,不说别的,就但从一些动画啥的也能看出,jq也还是有不少人使用的

  • axios

目前最火的就是axios了,轻量级,里面还封装了请求拦截和响应拦截的钩子,现在项目的开发基本上都是vue和react等框架进行开发,也能异步处理返回结果或者返回promise对象等等

  • fetch

fetch也是promise风格的,使用的也不少,原生就有的不需要引入第三方库js,但是他有两个致命的问题:1.会把返回的数据包两层的promise,也就是说你需要两次.then()方法才能拿到数据;2.fetch兼容性较差,在ie上无法使用

3.解决跨域的方法

  • cors跨域资源共享

不需要前端去做任何事情,后端配置服务器 的时候加几个特殊的响应头即可,这个才是真正的解决跨域,但是这种方式需要配置好不然每一个人都能拿到接口数据

  • jsonp

利用script标签里面的src属性进行跨域,因为src属性不受同源策略的影响,用的微乎其微,get请求可以解决,但是post请求就更别想了,而且需要前后端一起配合才行

  • 代理服务器

nginx可以开代理, vue-cli也可以代理

//vue.config.js文件中
// 开发环境用
module.exports = {
  devServer.proxy = {
	  '/rest': {
	    target: 'http://192.168.2.28:8120',  // 开发地址
	    ws: true, //websocket支持
	    changeOrigin: true, //是否开启跨域
	    pathRewrite: {'^/rest': ''} //路径重写
	  },
  },
}

  • vue中自带的插件库,了解一下: vue-resourse

也对xhr进行了封装,需要去引入和use

//引入插件
import vueResource from 'vue-resource';
Vue.use(vueResource)

//使用方法
this.$http.get('url').then(
	response => {
		console,log('成功的回调')
	},
	error => {
		console,log('失败的回调')
	}
)

4.具体请求的细节

1.get请求
// 方法一:为给定 ID 的 user 创建请求
axios.get('/user?ID=12345')
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
//方法二:
axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
2.post请求
//方法一:
axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
//方法二:
/**
* 注解: params是拼接在url上的参数,post请求也可以拼接上,data参数是放在body上请求的参数
* 同样: data里面也可以使用表单的形式传递参数,具体做法如下:
*/
axios({
  method: 'post',
  url: '/user/12345',
  params:{
	pageSize: 10,
	pageNum: 1
  },
  data: {
    firstName: 'Fred',
    lastName: 'Flintstone'
  }
});
  let ids = 'dadsadswvg,fdsgdsfdsf'
  let formData = new FormData();
  formData.append("id", ids);
  //将formData 添加到data即可
3.执行多个并发请求
function getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // 两个请求现在都执行完成
  }));
ADS 使用教程(一)Workspace, Library and Cell 简要介绍ADS的基本内容 阅读详情

相关推荐

第五章 PCIe介绍 5.1-5.7

为什么SSD要用PCIe接口?因为它快,比SATA快。通道,PCIe最多可以有32个通道。两个设备之间的PCIe连接,叫做一个Link。如下图,设备A和设备B是个双向连接,两个PCIe设备之间,有专门的发送和接收通道,数据可以同时往两个方向传输,PCIe Spec称这种工作模式为,可以理解为。和PCIe一样,SATA有独立的发送和接收通道。但与PCIe工作模式不一样,同一时间,SATA只有一条通道可以进行数据传输。这种工作模式称为。与SATA单通道不同,PCIe连接可以通过增加通道数扩展带宽。

fengbaobaola的博客 2968

聊一聊系列]聊一聊HTTPS那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog... 相信很多前端同学们,都听说过https,现在很多大的站点(如天猫、百度等),均使用了https协议进行传输。但是https如何使用,做什么用的,往往并不十分了解。今天我们就来一起聊一聊HTTPS那些事儿,且不说底层实现(毕竟想深入学习的...

hsany330的专栏 420

CST中PEC结构涂覆吸波材料的RCS仿真与优化

本文详细介绍了在CST Studio Suite中对PEC结构涂覆吸波材料进行RCS仿真的完整流程与优化策略。通过精确的材料参数设置、涂层厚度优化和仿真技巧,有效降低目标的雷达散射截面,提升隐身性能。文章结合实战案例,为工程师提供了一套高效的RCS仿真与优化解决方案。

c2d3e4f的博客 691

聊一聊WEB前端安全那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码): https://segmentfault.com/blog... 随着互联网的发达,各种WEB应用也变得越来越复杂,满足了用户的各种需求,但是随之而来的就是各种网络安全的问题。作为前端工程师的我们也逃不开这个问题。所以今天,就和大家一起聊一聊WEB前端的安全那些事儿。这里不去说那些后端的攻击(

cy5849203的专栏 1246

Proteus仿真AT89C51驱动DHT11:温湿度数据采集与LCD1602显示的5个调试坑点总结

本文总结了在Proteus仿真环境下使用AT89C51驱动DHT11温湿度传感器并通过LCD1602显示的5个常见调试坑点,包括DHT11时序问题、LCD1602初始化错误、数据校验失败、仿真特有差异及系统稳定性问题,提供了详细的解决方案和优化代码示例,帮助开发者高效完成温湿度采集项目。

weixin_30335575的博客 355

数字锁相环的原理与FPGA实现

数字锁相环是锁相环电路的全数字实现。锁相环电路能够实现对输入信号的相位进行跟踪,进而在噪声中提取纯净的有用信号。以上就是今天要讲的内容,本文简单地介绍了锁相环的原理,然后,在Vivado仿真平台上,通过verilog做仿真验证。最终仿真结果能够实现锁定,但锁定时间较长,表明参数仍可做调整。

weixin_45857378的博客 8508

聊一聊I/O那些事儿

在Linux/Unix系统中,对于1次IO读取操作,数据并不会由磁盘/Socket直接拷贝到应用程序的缓存区(用户空间)。 数据的流转顺序为: 磁盘/Socket–>内核空间–>用户空间。 所以,数据读取可以看成2个过程: Waiting for the data to be ready(等待数据到达内核缓冲区) Copying the data from the kernel to the process(从内核缓冲区拷贝数据到应用程序缓冲区) 基础概念 同步和异步 同步和异步关注的是消息

打酱油的葫芦娃 6240

寒假实训笔记day01——认识M4单片机之STM32F405RGT6

认识M4单片机之STM32F405RGT6(含义、规格、参数)

weixin_47200070的博客 8551

聊一聊爬虫那点事儿(一)

爬虫学习入门篇网络爬虫的介绍为什么要学爬虫爬虫入门程序环境准备编写代码HTTPCilent详细介绍1.GET请求2.GET带参数请求3.POST请求4.POST带参数请求5.连接池6.请求参数 作为一名程序员,大家对于爬虫这个词的理解都有不同,我以前的理解就是一只spider在网络上爬取东西,不过我们能控制这只spider去爬取需要内容并存取到数据库中。后来才发现爬虫有点重要!!! 网络爬虫...

福尔摩东的博客 499

ardupilot开发 --- MavLink 篇

ardupilot开发 --- MavLink 篇

记录老板的每次pua,分享领导每天的毒鸡汤... 4249

从零开始:手把手教你设计人形机器人锂电池供电系统

人形机器人要像人类一样“活起来”,必须有稳定的“能量血液”——供电系统。本文聚焦锂电池供电系统如何根据机器人功耗选择合适的锂电池参数(容量、电压、放电倍率);如何设计电池管理系统(BMS)保护电池安全;如何解决机器人运动时的“瞬时大电流”供电难题;如何通过硬件电路和代码实现供电系统的监测与控制。用“机器人小助手的能量危机”故事引入锂电池供电系统;拆解锂电池核心参数(容量、电压、放电倍率)和供电系统三大组件(电池组、BMS、电源转换模块);

AI天才研究院 1758

聊一聊前端存储那些事儿

侯禹,现就职于百度,从事Web前端开发,热爱技术分享。本文将和大家一起聊一聊前端存储那些事儿。 在Web开发越来越复杂的今天,前端拥有的能力也越来越多。其中最重要的一项莫过于Web存储。开发者们如果使用得当,这些存储可以帮助我们提升网页的性能与灵活度。本文不讲个中的细节,只讲各种前端存储的利弊,与各类存储的应用场景。毕竟这些技术的细节在网上随处可见,如果读者你决定使用的话,再去细

断弦泉月 651

继电保护原理1.2-反时限过流保护

反时限过流保护

让你爱上电路设计 1万+

聊一聊Cookie那些事儿

前言 最近由于Chrome 80+对第三方cookie进行了限制,虽然没有像最新版的safari和Firefox一样默认禁止第三方cookie,但是离完全禁止第三方cookie也不远。但因此也给我们前端开发人员带来了一些影响,第三方cookie不能正常携带,造成了许多请求有问题。 cookie的用途 众所周知HTTP请求是无状态请求,简言之即是HTTP请求不知道请求是否是来自同一个客户端,对于仅是...

Jaden 403

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

聊一聊 本地存储那些事儿

前端本地存储用得最多3种方式: cookie , sessionStorage , localStorage 1.关于cookie : 服务器与浏览器之间来回传递,储存大小不能超过4K,同时每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识,cookie只在设置的cookie过期时间之前一直有效,在所有同源窗口中都是共享的。 document.cookie=…...

Amy_cloud的博客 380

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

聊一聊华为云弹性公网IP的那些事儿

令人惊喜的是,EIP可以加入共享带宽,实现多个EIP资源共用一条带宽,方便管理,节约公网成本。弹性公网IP(Elastic IP,简称EIP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务,可以与弹性云服务器、裸金属服务器、虚拟IP、弹性负载均衡、NAT网关等资源灵活地绑定及解绑。华为云弹性公网IP服务具有高性价比,支持按需、按流量和带宽计费,不仅价格低于同类型产品的市场平均销售价格,还拥有完善的售后服务体系,为用户提供免费在线咨询、快速申请开通、账户注册及审计等一系列一站式专业增值服务。

859

聊一聊前后端分离的那些事儿

前言 前一段时间学着用vue写好了一个项目框架,用来改变曾经老项目的整体框架。因为之前的项目框架过于繁重,在那个基础上再增加新的内容只会让项目越来越重。 起因 不过在写完框架的起初还算欢喜,也是经历了一些坎坷修改,最终也算是完成的可以。不过在写代码期间,因为需要将项目放到tomcat上面运行,每次编写一些新内容或者修改问题的时候就需要打包再扔到tomcat下面去运行,过程比较繁琐。而且感觉还是没有...

莫奈小姐姐的博客 322

深聊 WAF 那些事儿

在软 WAF 方面,有不少优秀的开源引擎可供选择。首推的是 modsecurity,其次是基于 ngx_lua 的 lua - resty - waf、ngx_lua_waf,还有 Naxsi、WAFNinja、raptor_waf 等。一般基于 apache、nginx 的 WAF 模块也都各有优缺点,需要根据业务场景来选择最适合的,毕竟适合业务场景的才是最优秀的。

m0_57836225的博客 1256

[聊一聊系列]聊一聊前端模板与渲染那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog... 作为现代应用,ajax的大量使用,使得前端工程师们日常的开发少不了拼装模板,渲染模板。我们今天就来聊聊,拼装与渲染模板的那些事儿。 如果喜欢本文请点击右侧的推荐哦,你的推荐会变为...

weixin_34018202的博客 156

html5腻子脚本,[聊一聊系列]聊一聊前端存储那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog/frontenddriver在web开发越来越复杂的今天,前端拥有的能力也越来越多。其中最重要的一项莫过于web存储。开发者们如果使用得当,这些存储可以帮助我们提升网页的性能与灵活度。本文不讲个中的细节,只讲各种前端存储的利弊,与各类存储的应用...

weixin_35817967的博客 210

安卓请求权限还要注意的那一丢丢事儿

安卓请求权限还要注意的那一丢丢事儿 [预期] 在用户拒绝了权限的情况下,页面上还有一个按钮可以点击继续申请权限,提升用户体验 [相关代码] 按钮点击: override fun onClick(v: View?) { Log.e("111111","onClick,id = ${v?.id}") when(v?.id){ R.id.btn_permission->requestPermissions(PERMISSIONS_REQUIRED, P

hoobo0902的博客 534

[聊一聊系列]聊一聊前端功能统计那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog... 1. 什么是功能统计 作为一名开发,我们的产品发布出去之后,无论是产品还是运营,其实都是想及时了解产品对用户产生的影响的。用户到底喜欢什么不喜欢什么。但是如果拉住用户去一个个问的...

weixin_33859504的博客 159

[聊一聊系列]聊一聊HTTPS那些事儿

欢迎大家收看聊一聊系列,这一套系列文章,可以帮助前端工程师们了解前端的方方面面(不仅仅是代码):https://segmentfault.com/blog... 相信很多前端同学们,都听说过https,现在很多大的站点(如天猫、百度等),均使用了https协议进行传输。但是https如何使用,做什么用的,往往并不十分了解。今天我们就来一起...

weixin_33929309的博客 286

聊一聊爬虫那点事儿(二)

Jsoup详解和爬虫案例 本文是学习java爬虫的第二篇,第一篇在爬虫入门第一篇

福尔摩东的博客 651

聊一聊HTML5存储的那些事儿!

聊一聊HTML5存储的那些事儿!1、HTML5与以往的存储方式有哪些不同? javascript的cookie使用方法介绍 JQuery的cookie使用方法 解决cookie只有4k的大小问题 解决请求头常带存储信息的问题 解决关系型存储的问题 跨浏览器2、H5 的几种存储形式 本地存储(localstorage && sessionstorage)

xyphf的博客 838

聊一聊前端模板与渲染那些事儿

为什么80%的码农都做不了架构师?>>> ...

weixin_33739646的博客 156
上一篇: go.js的基本使用(主要是vue,react同理)
下一篇: iframe的父子通信策略
luofei_create
博客等级 码龄6年 3万+粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值