ajax的跨域请求_js解决跨域问题

ajax的跨域请求_js解决跨域问题什么是AJAX?AJAX是无需刷新页面就能够从服务器去的数据的一种方法,负责Ajax运作的核心对象是XMLHttpRequest(XHR)对象。同源策略是对XHR的一个主要约束,它为通信设置了“相同的域、相同的端口、相同的协议”这一限制。试图访问上述限制之外的资源都会引发安全错误,除非采用被认可的跨域解决方案。这个方案叫做CORS(Cross-OriginResourceSharing)跨源…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

什么是AJAX?

AJAX 是无需刷新页面就能够从服务器去的数据的一种方法,负责Ajax运作的核心对象是XMLHttpRequest(XHR)对象。

同源策略是对XHR的一个主要约束,它为通信设置了“相同的域、相同的端口、相同的协议”这一限制。

试图访问上述限制之外的资源都会引发安全错误,除非采用被认可的跨域解决方案。

这个方案叫做CORS(Cross-Origin Resource Sharing)跨源资源共享。

哪些访问属于跨域?

三种解决方案:

方案一:

//弊端:存在浏览器兼容的问题

079392267176

AJAX 跨域解决方案 – CORS

需要被请求方的服务端设置: Access-Control-Allow-Origin

切记:Access-Control-Allow-Origin 不可设置为 * ,设置为可访问的域名。

//设置可供访问的白名单

$white_list = [‘http://cdn.abc.com’,’http://abc.com’];

$_SERVER[‘HTTP_ORIGIN’] //表示请求方的域名

$http_origin = ”;

if (!empty($_SERVER[‘HTTP_ORIGIN’]) && in_array($_SERVER[‘HTTP_ORIGIN’],$white_list)) {

$http_origin = $_SERVER[‘HTTP_ORIGIN’];

//设置 header 信息

header(“Access-Control-Allow-Origin: {$http_origin}”);

header(“Access-Control-Allow-Methods”, “POST,GET”);

header(‘Access-Control-Allow-Credentials:true’); //允许访问Cookie

header(‘Access-Control-Allow-Headers : X-Requested-With’); //设置Headers

}

//执行代码逻辑…

另:如果请求的是html,在文件里加上meta标签。

方案二:

//弊端:不支持 POST 请求。

使用 JSONP 进行解决跨域问题,网上文章蛮多的。

方案三:

与方案一类似。

修改Nginx Apache 配置:

//Nginx

http {

……

add_header Access-Control-Allow-Origin *;

add_header Access-Control-Allow-Headers X-Requested-With;

add_header Access-Control-Allow-Methods GET,POST,OPTIONS;

……

}

Apache :

……

Header set Access-Control-Allow-Origin *

大家可以根据自己的情况进行选择方案。

Thanks ~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172580.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C语言中char、short、int、long各占多少字节

    C语言中char、short、int、long各占多少字节1byte=8bit一个字节占8个二进制位windows操作系统,32位机中,char:1个字节short:2个字节int:4个字节long:4个字节以下是windows操作系统,32位机下的代码测试结果(32位机中,指针占4个字节,如变量e):windows操作系统,64位机中,char:1个字节…

    2022年5月5日
    69
  • 基于pytorch卷积人脸表情识别–毕业设计「建议收藏」

    基于卷积神经网络的人脸表情识别前言毕业设计内容介绍卷积神经网络的设计卷积网络的模型卷积池化过程详细说明第一层卷积池化过程第二层卷积池化过程第三层卷积池化过程全连接层过程模型的训练过程卷积与池化原理模型如何训练模型的评估指标训练结果分析通过训练曲线分析通过混淆矩阵分析效果通过摄像头识别表情设计流程效果演示部分代码展示总结前言这篇文章记录一下我本科毕业设计的内容。我的课题是人脸表情识别,本来最开始按照历届学长的传统是采用MATLAB用传统的机器学习方法来实现分类的。但是鉴于我以前接触过一点点深度学习的内容,

    2022年4月11日
    161
  • 美团js面试题

    美团js面试题转载自:http://blog.csdn.net/qq_27682041/article/details/76408681该题难度系数:★★★考查的技术点:1).作用域与作用域链 2).变量查找这题分为两小题,我们先看第一题:[javascript] viewplain copyvar fn = funct

    2022年8月27日
    3
  • tensorflow 安装问题总结

    tensorflow 安装问题总结tensorflow 安装问题总结

    2022年4月24日
    40
  • 电磁场与电磁波实验 01 – | 位移电流测量及电磁场与电磁波的存在实验[通俗易懂]

    电磁场与电磁波实验 01 – | 位移电流测量及电磁场与电磁波的存在实验[通俗易懂]一、实验目的 1、认识时变电磁场,理解电磁感应的原理和作用 2、理解电磁波辐射原理 3、了解位移电流的概念 二、预习要求 1、什么是法拉第电磁感应定律? 2、半波振子天线的原理。 三、实验仪器 HD-CB-V电磁场电磁波数字智能实训平台:1套 电磁波传输电缆:1套; 平板极化天线:1副; 半波振子天线:1副 (…

    2025年6月29日
    2
  • matlab分段函数的表达_MATLAB|分段函数的构造方法

    matlab分段函数的表达_MATLAB|分段函数的构造方法1.问题描述以如下的典型分段函数为例:2.技术背景MATLAB。3.解决方案以上的分段函数分别由两个函数构成:f1(x)=0.5*x,当x<100;f2(x)=-0.5*x+100,当x>=100;故整体的分段函数可以表示为:f(x)=f1(x)(当x<100)+f2(x)(当x>=100)如此,可以用一个统一的表达式表达,方便…

    2022年5月28日
    96

发表回复

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

关注全栈程序员社区公众号