AJAX请求及跨域问题怎么解决
导读:本文共4829.5字符,通常情况下阅读需要16分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要:一.原生AJAX请求(GET)代码中会出现node.js的相关代码,比如express框架,对node.js不熟悉的同学可以先注重前端代码前端代码:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv=&qu... ...
目录
(为您整理了一些要点),点击可以直达。代码中会出现node.js的相关代码,比如express框架,对node.js不熟悉的同学可以先注重前端代码
前端代码:
}
服务端代码
先了解一下jQuery中AJAXGET请求和POST请求语法:
服务端代码:
这里使用app.all()使得所有请求方法都可以访问
跨域问题:当我们的浏览器从一个域名的网页去请求另一个域名的资源时,其中域名、端口、协议任一不同,都是属于跨域
示范例子
前端请求代码如下 :
服务端我介绍两种简单且效率极高的方法解决跨域问题
1.在服务端设置header
2.使用中间件cors
这里给大家具体讲一下cors中间件使用步骤
1.在终端使用 npm i cors 命令下载这个中间件
2.使用require导入cors中间件:const cors=require(“cors”)
3.用app.use()方法注册中间件:app.use(cors()) 注意:这个注册方法一定要写在在配置路由之前
一.JSONP跨域
JSONP(JSON with Padding),是一个非官方的跨域解决方案,只支持get请求(具有局限性)
工作原理:JSONP 就是利用 script 标签的跨域能力来发送请求的。
二.nginx反向代理
大致解释:
www.A.com/index.html需要调用www.B.com/server.js,可以写一个中间接口www.A.com/server.js,靠着这个接口在服务端
去调用www.B.com/server.js并拿到返回值,然后再返回给index.html
这个方法一般很少使用,它可以不用目标服务器与前端配合,但是需要搭建一个中转nginx服务器,用于转发请求。
AJAX请求及跨域问题怎么解决的详细内容,希望对您有所帮助,信息来源于网络。