本文介绍: `headers`:可选的,是即将被发送自定义请求头,类型为 Object对象,例如:`{‘Content-Type‘: ‘Application/json‘}`- `responseType`: 可选的,表示服务器响应数据类型可以是 ‘json‘, ‘text‘ 等,默认值为 ‘json‘注意,这里有很多可以特殊处理比如说,请求结束,成功,超时,出错,还可以设置请求头,请求数据类型。- `method`:可选的,是创建请求使用方法,类型为 字符串默认值为: ‘get

ajax异步 JavaScript 和 XML)是什么?

我们不可能一味的编写静态页面,有时需要动态获取数据,而Ajax可以js代码动态获取数据

httphttps是什么?

http是一种网络传输协议 ,超文本传输协议,建立在tcp之上,定义发送接收传输信息规则

https=http+ssl加密处理

ajaxhttp的关系?

ajax或者ajax封装的东西来发送http请求 

http特点?

链接:每次处理一个请求链接后就断开

状态:对处理事务没有记忆能力

http媒体独立:只要两端知道处理内容格式 ,使用适合的 MIME-type 内容类型。啥都能传。

 一个非常基本xml请求

 注意,这里有很多可以特殊处理,比如说,请求结束,成功,超时,出错,还可以设置请求头,请求数据类型

把这个请求丰富功能封装之后就是ajax,除了用这个还刻有jquary封装ajax

xml之后是fetch但现在也很少人用它返回的是promiss对象

 

axios这个是非常重要的,现在都用

1.ajax基于xhr+request封装的ajax

2.浏览器端和node端都可以使用

3.支持拦截器

4.支持请求取消

axios可以支持手写发送请求,但大部分时间我们脚手架工具安装axios所以主要学在工具里使用 

axios.get(url[, config])
axios.post(url[, data[, config]])
– axios.put(url[, data[, config]])
– axios.delete(url[, config])

**config参数对象中常用的属性:**

– `url`:必需的,是用于请求的服务器 URL,类型为 字符串
– `method`:可选的,是创建请求时使用的方法,类型为 字符串,默认值为: ‘get
– `headers`:可选的,是即将被发送自定义请求头,类型为 Object对象,例如:`{‘Content-Type‘: ‘Application/json‘}`
– `data`:可选的,是作为请求主体发送数据,只适用于这些请求方法 ‘PUT’, ‘POST’, 和 ‘PATCH’。支持常见的数据类型:plain object、FormData、URLSearchParams、File
– `params`:可选的,是即将与请求一起发送的 URL 参数,类型必须是一个格式对象(plain object)或 URLSearchParams 对象
– `timeout`:可选的,指定请求超时的毫秒数(0 表示无超时时间),默认值为 1000。如果请求超过 `timeout` 的时间,请求将被中断
– `responseType`: 可选的,表示服务响应数据类型,可以是 ‘json‘, ‘text‘ 等,默认值为 ‘json

使用 `then(response => {})` 返回接收服务端响应响应信息对象response包含以下信息 :
 

工具里使用(vuecli

1.安装axios有时需要序列化也许安装qs(把一个json对象转为?&那种形式

2.在主函数导入,用脚手架安装默认在module中直接./导入即可,其他插件也一样

3.导入

        import axios fromaxios

        axios.defaults.basseURL=______

        vue.prototype.$axios=axios

        挂在到vue原型调用方便如axios.get等,文章里有原型知识

4.可以设置axios拦截器

        axios.interceptors.response.use(function(….

        axios.interceptors.request.use(function(….

http状态

– 200 – 请求成功
– 301 – 资源网页等)被永久转移到其它URL
– 404 – 请求的资源网页等)不存在
– 500 – 内部服务器错误
 

 http请求与相应格式

跨域(浏览器阻止的跨域,服务器不会跨域)

### 4.2 跨域解决方案

实际开发中,跨域发送请求是避免不了的。比如

1. 我们公司开发一套全新的前端项目需要部署在单独的服务器上,
2. 而提供数据后台接口项目也是独立部署在一个服务器上,
3. 此时,两台服务器部署项目时就会造成域名不一致的问题
4. 当前端向后台发起HTTP请求时,就会因为跨域请求而被浏览器拒绝

既然,避免不了就要想办法绕开浏览器的同源策略,去完成跨域请求。

这里列举常见的一些解决方案

1. CORS:跨域资源共享。就是在后台服务器端配置允许某个域名下的请求。

2. 中间服务器代理,衍生的反向代理:分为正向代理反向代理,通常使用反向代理,如proxy代理

        这个比较常用下面放个例子

        用vuecli例子

 proxy

‘/api/v1’为这个路径重写跨域的 target(为跨域的域名

changeOrigin 开启跨域

pathreWrite{

‘’api‘’:’‘/’‘}

3. JSONP:就是动态生成一个script,由于scriptsrc不受同源策略限制,就可以去请求不同域的接口

1.不支持post请求

原文地址:https://blog.csdn.net/m0_52289188/article/details/128037640

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_15591.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注