文档章节

jQuery跨域,添加自定义头部header

w
 walala_Lee
发布于 2017/05/02 11:12
字数 273
阅读 454
收藏 0

1、前端jQuery代码

$.ajax({
            crossDomain: true,
            beforeSend: function(req) {
                req.setRequestHeader("token", token);
                req.setRequestHeader("auth", auth);
            },
            url:'http://baidu.com',
            data:{},
            method:'get',
            dataType:'json',
            success:function(data) {
                
            }
        });

2、服务器端对于要访问的地址,要设置响应头

response.addHeader("Access-Control-Allow-Origin", "*");//支持全域名访问,不安全,部署后需要固定限制为客户端网址
response.addHeader("Access-Control-Allow-Headers", "x-requested-with,content-type,token,auth");//响应头 请按照自己需求添加。
response.addHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");//支持的http 动作

x-requested-with,content-type 后面要加上,允许传递的头部参数

另外,对于跨域请求,浏览器会先针对请求地址,发送一次 OPTIONS 类型的请求,确保服务器是能够接受跨域请求,如果此时服务器在响应头中没有任何设置,浏览器则不会发起正式请求(GET、POST、DELETE、PUT请求),会提示请求失败。

所以服务器端,根据各自的需求,有时候同一个接口地址要多写一个 OPTIONS 接口,什么都不做,只用来设置响应头。

参考博客:http://www.cnblogs.com/cdemo/p/5158663.html

© 著作权归作者所有

共有 人打赏支持
w
粉丝 3
博文 167
码字总数 50381
作品 0
深圳
Ajax 跨域难题 - 原生 JS 和 jQuery 的实现对比

讲解顺序: AJAX 的概念及由来 JS 和 jQuery 中的 ajax 浏览器机制 AJAX 跨域 AJAX 的概念 在讲解 AJAX 的概念之前,我先提一个问题。 这是一个典型的 B/S 模式。 PS. B/S结构(Browser/Ser...

梁音
06/19
0
0
PHP判断一个请求是Ajax请求还是普通请求

Javascript中大多数的框架如 jquery(jquery ui、jquery easyui)、Mootools 等,在发出 Ajax 请求时,都会发送额外的 HTTPXREQUESTED_WITH 头部信息,因此每当发送一个ajax请求你就可以在服务...

Junn
2013/08/05
0
1
遇到的一个关于ajax跨域的问题

首先说下几个解决方案: 1.jsonp 2.CORS 3.代理 4.iframe 这里说一下 1 2 4 我遇到的问题 1.jsonp 实际原理是加载远程js,所以返回的数据是一个可以执行的javasript代码,很明显如果你返回一段字...

ossea
2017/10/19
0
0
jQueryMobile快速入门

what   jQuery Mobile是jQuery 在手机上和平板设备上的版本。它不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。![mobile-wh...

笔阁
2015/11/16
0
2
ajax jsonp其本质 用原生js来处理跨域的数据(jsonp)

说明总结: 1.ajax和jsonp其实本质上是不同的东西。ajax的核心是通过XmlHttpRequest获取非本页内容,而jsonp的核心则是动态添加<script>标签来调用服务器提供的js脚本。 2.但是ajax和jsonp在...

BearCatYN
2015/06/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java IO类库之PrintStreamWriter

* A <code>PrintStream</code> adds functionality to another output stream, * namely the ability to print representations of various data values * conveniently. Two other fea......

老韭菜
55分钟前
0
0
qduoj~前端~二次开发~笔记

青岛大学qdu的onlinejudge是js的写的前端,框架是vue.js,在nodejs上部署运行,其实整体运行还是建立在docker的容器虚拟环境里,这里暂时不需要docker。安装环境是Ubuntu14-64bit 1.安装一大...

虚拟世界的懒猫
58分钟前
6
0
ConcurrentHashMap源码解读

部分内容转自:http://jiabinyuan.xyz/#/app/archive/detail/25 内部结构 内部采用了segment结构,每一个segment相当于一个hashtable。看下面的结构图: 从图的结构我们可以了解到,Concurr...

edwardGe
今天
1
0
Ubuntu终端Tab键自动补全

打开 /etc/bash.bashrc,找到下列代码,取消注释。 #enable bash completion in interactive shells#if ! shopt -oq posix; then# if [-f /usr/share/bash-completion/bash_compl......

大熊猫
今天
0
0
polipo socks5代理转http代理

天朝的网络,哎~ 装个 yarn 都时而会卡 假设在SSlocal 已经装好运行的前提下,来安装设置 polipo sudo apt-get install polipo sudo vim /etc/polipo/config 追加下列配置内容,并保存 socksP...

纯洁徐
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部