HTML5之Ajax跨域的问题和处理

2024-09-02 17:48

本文主要是介绍HTML5之Ajax跨域的问题和处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

请求的文件与当前的文件不在同一域下,ajax跨域请求

 

(1)         标准浏览器下:

后端对访问源进行控制:

设置一下:设置访问该资源的域

 

 

 

<script>

window.onload =function() {

      

       /*

       在标准浏览器下,XMLHttpRequest对象已经是升级版本,支持了更多的特性,可以跨域了

       但是,如果想实现跨域请求,还需要后端的相关配合才可以

      

       */

       var oBtn =document.getElementById('btn');

      

       oBtn.onclick = function() {

             

              var xhr = new XMLHttpRequest();

              xhr.onreadystatechange= function() {

                     if (xhr.readyState == 4) {

                            if (xhr.status ==200) {

                                   alert(xhr.responseText);

                            }

                     }

              }

              xhr.open('get','http://www.b.com/ajax.php', true);

              xhr.send();

             

       }

      

}

</script>

</head>

 

<body>

       <input type="button"value="获取跨域下内容" id="btn" />

</body>

</html>

 

 

B中后端中ajax.php

<?php

header('Access-Control-Allow-Origin:http://www.a.com');     //这是允许访问该资源的域

echo 'hello';

 

 

 

 

(2)         IE下实现跨域请求

同域下,XMLHttpRequest

跨域下:oXDomainRequest

只有事件不同 onload

 

<script>

window.onload = function() {

        

         /*

        

         XMLHttpRequest: 增加很多功能,他也不推荐使用onreadystatechange这个事件来监听,推荐使用onload

        

         XDomainRequest: IE如果想实现跨域请求,则需要使用另外一个对象去实现

         */

         varoBtn = document.get

这篇关于HTML5之Ajax跨域的问题和处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130649

相关文章

Kotlin Map映射转换问题小结

《KotlinMap映射转换问题小结》文章介绍了Kotlin集合转换的多种方法,包括map(一对一转换)、mapIndexed(带索引)、mapNotNull(过滤null)、mapKeys/map... 目录Kotlin 集合转换:map、mapIndexed、mapNotNull、mapKeys、map

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

SpringSecurity整合redission序列化问题小结(最新整理)

《SpringSecurity整合redission序列化问题小结(最新整理)》文章详解SpringSecurity整合Redisson时的序列化问题,指出需排除官方Jackson依赖,通过自定义反序... 目录1. 前言2. Redission配置2.1 RedissonProperties2.2 Red

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

Python使用vllm处理多模态数据的预处理技巧

《Python使用vllm处理多模态数据的预处理技巧》本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核