CORS .net 跨域解决方案
IIS部署wcf rest项目(或 web项目)时,CORS跨域配置,并完美解决POST带参数请求问题
操作方法
(01)如图:打开IIS,找到 “HTTP响应标头”
(02)添加如下配置信息:Access-Control-Allow-Methods : GET,POST,PUT,DELETE,HEAD,OPTIONSAccess-Control-Allow-Origin : *Access-Control-Allow-Headers : Content-Type,api_key,Authorization,X-Requested-With如下图所示:(注:如是J2EE项目,可在统一URL拦截器中,eader("Access-Control-Allow-Headers", "Content-Type,api_key,Authorization,X-Requested-With");eader("Access-Control-Allow-Method", "GET,POST,PUT,DELETE,HEAD,OPTIONS");eader("Access-Control-Allow-Origin", "*");)注eader("Access-Control-Allow-Origin", "*"); “ *”可替换为只允许的域,如:"http://localhost:8080/*"
(03)此时已经解决 GET 请求问题可成功返回数据。POST请求比较复杂,跨域带参请求时浏览器会先发一个OPTIONS请求(就是这个问题困扰了我两天)
(04)解决方法如下:同一个请求需要两个相同请求地址的方法,一个标记为“POST”,另一个标记为“OPTIONS“,实体方法为标记”POST“的方法,这里”OPTIONS“方法不需要做任何逻辑操并且返回值为void即可(其实OPTIONS请求为浏览器的校验,发带参数的POST请求时浏览器会先发一个OPTIONS请求,检验request 头信息和response头信息一致后才真正发起POST请求)。 代码如下图所示:(JAVA同理)
(05)jquery Ajax请求如下所示:注意其中的contentType : 'text/json'和data:'json格式的字符串'
(06)到此 CORS 跨域Ajax请求完全解决。
特别提示
这里的content-type不属于(application/x-www-form-urlencoded,multipart/form-data,text/plain)中的任何一种,所以是复杂请求。
-
word2016脚注和尾注怎么设置 脚注尾注如何转换
在我们日常工作中,编辑Word文档时,需要对一些名词、句子进行解释说明,那么我们需要用到脚注,或是尾注。那怎么进行设置呢,下面就来进行简单的说明。操作方法(01)双击打开word文档,选中需要加脚注的文字,然后点击菜单栏【引用】。(02)然后点击【插入脚注】。(03)此时会在此页...
-
光盘刻录大师免费版图文使用教程
光盘刻录大师是涵盖了数据刻录、光盘备份与复制功能的软件,其用户使用评价好错参半,见仁见智吧。现在网上也流行使用光盘刻录软件大师免费版,今天就把光盘刻录软件大师免费版的图文使用教程教给大家:操作方法(01)打开刻录软件后,从右上角开始,我们可以看到有“添加视...
-
不用U盘,安装纯净版Windows系统
安装系统的方法有好多种,U盘制作启动盘安装时,会自带一些软件浏览器啊、小游戏、桌面壁纸什么,万能驱动的,装完后又要一个个卸载,但是注册列表又没法清理干净。如何安装纯净版的Windows系统,让我们一起跟着步骤来实现吧!操作方法(01)在搜狗浏览器中搜索:MSDN,选择官方网站...
-
Win10系统怎么登陆Microsoft账户
如果有小伙伴想知道Win10系统怎么登陆Microsoft账户,可以来看看下面的步骤哦!一、先注册账户。(01)在网上搜索“Microsoft账户注册”,找搜索结果中找到注册官网进行注册。(02)进入注册界面以后,输入正确的相关信息,然后输入密码和其他的信息。(03)输入完成之后,我们就可以...