beforeSend 出现跨域问题,header里直接设置token就没问题----Day1
一开始前端调用后端接口出现跨域问题,右键查看元素,会有跨域错误提示,类似下图,后来找后端设置了一下,问题解决。可以登录获取token等参数了。
但是 请求设备列表时,beforeSend 中设置token却失败了,没有效果,出错,然后后端程序给的解决方案是在header中设置。
//beforesend这个不行,传不过去beforeSend: function(xhr) {xhr.setRequestHeader("token", window.sessionStorage.getItem("Token"));},
是在header里直接设置token就没问题
headers: { 'Content-Type': 'application/json;charset=utf8', 'token': window.sessionStorage.getItem("Token") },
layui框架 ajax 调用接口,登录,查询设备 记录一下
<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title></title><style>html,body {width: 100%;height: 100%;overflow: hidden;margin: 0;padding: 0;background-color: #062F6B;}</style><script src="../layuiadmin/layui/layui.js"></script><script>layui.use(['form'], function() {var $ = layui.$,form = layui.form;window.setInterval(function() {refreshToken();}, 10 * 60 * 1000); //60*1000 秒 10*60*1000=10分钟 刷新一次token,防止token过期function refreshToken() {$.ajax({type: 'POST',url: '/Login/Account/PhoneLogpwd',data: { "oldToken": window.sessionStorage.getItem("token") },contentType: 'application/json',success: function(result) {alert(JSON.stringify(result));if (result.resultCode == "10000000") {//登录成功console.log(result.data);var token = result.data.token;alert(token);//将生成的token重新放入到session中window.sessionStorage.setItem("token", token);}},error: function(XMLHttpRequest, textStatus, errorThrown) {alert(JSON.stringify(errorThrown))}});}login();function login() {$.ajax({type: 'POST',url: '/Login/AccountPwd',data: { "loginName": "haisen", "loginpwd": "123456" },dataType: "json",success: function(result) {// alert(JSON.stringify(result));if (result.resultCode == "10000000") {//登录成功console.log(result.data);var token = result.data.token;//将token放入到session中window.sessionStorage.setItem("Token", token);}},error: function(XMLHttpRequest, textStatus, errorThrown) {alert(JSON.stringify(errorThrown))}});}getDevices();function getDevices() {$.ajax({type: 'GET',url: '/Device/List',// data: { "address": "" },dataType: 'json',headers: { 'Content-Type': 'application/json;charset=utf8', 'token': window.sessionStorage.getItem("Token") },success: function(result) {alert(result.resultCode);if (result.resultCode == "10000000") {//登录成功//获取设备信息alert("success");console.log(result.data);}},error: function(XMLHttpRequest, textStatus, errorThrown) {alert(2);if (typeof error_callback == "function") {error_callback(errorThrown); //成功后回调函数}}});}});</script>
</head><body>
</body></html>
beforeSend 出现跨域问题,header里直接设置token就没问题----Day1相关推荐
- PHP处理跨域:header(AccessControlAllowOrigin:星)允许所有来源访问;后端Curl请求转发
跨域说明 所谓同源是指,域名,协议,端口均相同,不明白没关系,举个例子: http://www.123.com/index.html 调用 http://www.123.com/server.php ...
- vue如何配置服务器端跨域_vue项目里如何配置本地代理实现跨域请求
1.在如图项目配置的index.js文件夹下添加以下一段话 微信图片_20180912182204.png proxyTable: { '/rest': { target: 'http://192.1 ...
- JSONP跨域请求数据报错 “Unexpected token :”的解决办法
原文 http://www.cnphp6.com/archives/65409 Jquery使用ajax方法实现jsonp跨域请求数据的时候报错 "Uncaught SyntaxError ...
- authorization 传 就跨域_headers中添加允许token,客户端跨域请求问题
定义了一个MyCrossOriginFilter.class,并在Access-Control-Allow-Headers 额外添加了允许"token",客户端ajax请求带有to ...
- PHP后端跨域HEADER头的设置
header("Access-Control-Allow-Origin: http://a.com"); // 允许a.com发起的跨域请求 //如果需要设置允许所有域名发起的跨域 ...
- PHP 跨域header处理
跨域问题一直都很纠结的,最近做项目是真正遇到了.现代浏览器针对不同域名之间的ajax请求,一般情况下会阻止你获取到ajax返回内容(即使是1.a.com和2.a.com也算跨域),但是请求是真实发生的 ...
- jQuery中的ajax、jquery中ajax全局事件、load实现页面无刷新局部加载、ajax跨域请求jsonp、利用formData对象向服务端异步发送二进制数据,表单序列化(异步获取表单内容)
jQuery中使用ajax: 在jQuery中使用ajax首先需要引入jQuery包,其引入方式可以采用网络资源,也可以下载包到项目文件中,这里推荐下载包到文件中:市面上有多个版本的jQuery库,这 ...
- 后端工程师的「跨域」之旅
跨域,对后端工程师来说,可谓既熟悉又陌生. 这两个月我以架构师的角色参与一款教育产品的孵化,有了一段难忘的跨域之旅. 写这篇文章,我想分享我在跨域这个知识点上的经历和思考,希望对大家有所启发. 1 遇 ...
- HTML5 AJAX跨域请求
方法一:HTML5新的标准中,增加了" Cross-Origin Resource Sharing"特性,这个特性的出现使得跨域通信只需通过配置http协议头来即可解决. Cros ...
最新文章
- 植物的意识,是我们的错觉吗?
- Java反射机制实例解析
- Russ Miles:被忽略的架构师和混沌工程
- Android自制SwitchBar(附资源)
- 北卡教堂山计算机科学专业,UNC的CS「北卡罗来纳大学教堂山分校计算机科学系」...
- Vue—基础概念—实例
- 加工中心刻字宏程序_【宏程序高级案例】涡轮发动机转动轴叶轮的编程思路与程序解析...
- ARM寄存器及功能介绍/R0-R15寄存器
- 数据采集标注、模型开发、部署落地,百度大脑全栈 AI 能力详解
- window.open以post方式提交
- 跟我学制作javaEE网上书店销售管理系统(沙箱支付)springboot+vue
- 漂亮的网络验证php源码,好用的冰心php网络验证和源码例子
- Java代理(静态代理、JDK动态代理、CGLIB动态代理)
- 网页贴便签, Chrome特色网页便签纸 OurStickys
- ajax的响应与取消响应
- 【Scratch-动作模块】滑行指令
- Struts框架实战精讲 struts1(2)- 登录案例
- 针对好玩游戏物品清单
- 不高兴的津津1073
- java实现汉字文字转换拼音(全拼和简拼)工具包