jquery、javascript实现(get、post两种方式)跨域解决方法

时间:2022-12-15 21:14:45

一、实现get方式跨域请求数据

浏览器端

<script>
$(document).ready(function(){
$.ajax({
url: "http://www.xxx.cn/index.php",
type: "get",
dataType: "jsonp", //指定服务器返回的数据类型
success: function (data) {
console.log(data);
}
});
});
</script>

服务器端

<?php
$data = [
'info' => '跨域请求成功',
'status' => 1
];
$callback = $_GET['callback'];//callback参数是发起请求是jquery的回调参数。
echo $callback.'('.json_encode($data).')';//所有返回数据时,需要按照此方式。
?>

二、实现post方式跨域请求

浏览器端

<script>
$(document).ready(function(){
$.ajax({
url: "http://www.xxx.cn/index.php",
type: "post",
dataType: "json", //指定服务器返回的数据类型
success: function (data) {
console.log(data);
}
});
});
</script>

服务器端

Access-Control-Allow-Origin:* 表示允许任何域名跨域访问

如果需要指定某域名才允许跨域访问,只需把Access-Control-Allow-Origin:*改为Access-Control-Allow-Origin:允许的域名

例如:header('Access-Control-Allow-Origin:http://www.xxx.com');

<?php
header('Access-Control-Allow-Origin: *');//允许所有来源访问
header('Access-Control-Allow-Methods: POST');//响应类型 $data = [
'info' => 'post方式,跨域请求成功',
'status' => 1
];
echo json_encode($data);
?>

某些header请求头

// 指定允许其他域名访问
header('Access-Control-Allow-Origin:*');
// 响应类型
header('Access-Control-Allow-Methods:POST');
// 响应头设置
header('Access-Control-Allow-Headers:x-requested-with,content-type');

//设置内容类型为json

header('content-type:application:json;charset=utf8');

jquery、javascript实现(get、post两种方式)跨域解决方法的更多相关文章

  1. jQuery中开发插件的两种方式

    jQuery中开发插件的两种方式(附Demo) 做web开发的基本上都会用到jQuery,jQuery插件开发两种方式:一种是类扩展的方式开发插件,jQuery添加新的全局函数(jQuery的全局函数 ...

  2. 调用init方法 两种方式 一个是浏览器方法 一个是 xml中手工配置&lpar;load-on-startup&rpar;

    调用init方法 两种方式 一个是浏览器方法 一个是 xml中手工配置(load-on-startup)

  3. jQuery中开发插件的两种方式&lpar;附Demo&rpar;

    做web开发的基本上都会用到jQuery,jQuery插件开发两种方式:一种是类扩展的方式开发插件,jQuery添加新的全局函数(jQuery的全局函数是属于jQuery命名空间的函数),如果将jQu ...

  4. jQuery 获取DOM节点的两种方式

    jQuery中包裹后的DOM对象实际上是一个数组,要获得纯粹的DOM对象可以有两种方式: 1.使用数组索引方式访问,例如: var dom = $(dom)[0]; 如: $("#id&qu ...

  5. Javascript绑定事件的两种方式的区别

    命名函数 <input type="button" onclick="check()" id="btn"/> <scrip ...

  6. JavaScript跨域解决方法大全

    跨域的定义:JavaScript出于安全性考虑,同源策略机制对跨域访问做了限制.域仅仅是通过“URL的首部”字符串进行识别,“URL的首部”指window.location.protocol +win ...

  7. JavaScript创建表格的两种方式

    方式一: var data = [ { id: 1, name: "first", age: 12 }, { id: 2, name: "second", ag ...

  8. 转&colon; 将Eclipse代码导入到AndroidStudio的两种方式 ,测试了方法2,成功。

    蛋疼,不知道为什么我的eclipse的logcat总是莫名其妙的显示一堆黄色字体的字,看不懂的那种,如下图: 然后查了一下资料,说可能是adt版本太低,手机系统太高. 然后本来想升级adt,但是各种折 ...

  9. 两种方式配置vue全局方法

    目录 1,前言 2,第一种方式 3,第二种方式 1,前言 在Vue项目开发中,肯定会有这样一个场景:在不同的组件页面用到同样的方法,比如格式化时间,文件下载,对象深拷贝,返回数据类型,复制文本等等.这 ...

随机推荐

  1. java1&period;8函数式接口

    package com.wzy.t1; @FunctionalInterface//此注解用来声明此接口为函数式接口 public interface People { /** * 1.函数式接口只能 ...

  2. &lbrack;转&rsqb;透过 Linux 内核看无锁编程

    非阻塞型同步 (Non-blocking Synchronization) 简介 如何正确有效的保护共享数据是编写并行程序必须面临的一个难题,通常的手段就是同步.同步可分为阻塞型同步(Blocking ...

  3. thinkphp 设计思想

    thinkphp 运行机制: thinkphp首先设置一些常量.然后运行Think对象(系统环境),装载think的运行环境,包括:自动加载.异常处理.功能核心等.环境准备好后,运行App对象(应用程 ...

  4. 在树莓派上部署asp&period;net

    今天成功的在树莓派上部署asp.net呢.之前在unbuntu上测试成功了,结果今天操作的时候又不会操作了,主要对Linux太不熟悉了,找资料,资料又不多,这次赶紧记录下来,以备下次查阅. 我用的mo ...

  5. 杭电 2047 阿牛的EOF牛肉串 (递推)

    阿牛的EOF牛肉串 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  6. BZOJ 1038 ZJOI2008 瞭望塔 半平面交

    题目大意及模拟退火题解:见 http://blog.csdn.net/popoqqq/article/details/39340759 这次用半平面交写了一遍--求出半平面交之后.枚举原图和半平面交的 ...

  7. poj2112(网络流-最大流&plus;二分)

    题意:给你k个挤奶器,c头牛,每个挤奶器能放m头牛,问你奶牛需要走的最大距离最小是多少: 解题思路:因为最大距离最小,也就是求最小的距离满足所有牛都能到,所以我们先用floyd跑最短路,把所有点之间的 ...

  8. Linux&lpar;CentOS7&rpar;安装Tomcat

    概述 Tomcat是运行Jsp文件的容器服务,能够处理URL请求,类似于IIS.相对于IIS,Tomcat可以部署到Linux.Windows.IOS等操作系统.这里主要整理将Tomcat部署到Lin ...

  9. ubuntu下安装 Sublime Text 3 及 PlantUML 绘图插件

    ubuntu下只想做C++的程序代码编写,最开始选择了codeblock,主要目的是安装简单,集成度高,还可以调试,但是用的时候老是无故退出,改了半天的代码就这样丢失,挺苦恼的,可能跟自己装的系统比较 ...

  10. poj 2299 Ultra-QuickSort(树状数组)

    Ultra-QuickSort Time Limit: 7000MS   Memory Limit: 65536K Total Submissions: 67681   Accepted: 25345 ...