ajax实现跨域请求有两种方式:

方法一:jsonp的方式

jsonp方式的关键点在客户请求以jsonp作为数据类型,服务器端接收jsonp的回调函数,并通过回调函数进行数据的传输。具体代码如下:

客户端:

$.ajax({

type:"GET",

url:"http://192.168.20.88:80/class/index.php",

dataType:"jsonp",

jsonp:"callback",

jsonpCallback:"success_jsonpCallback",

success:function(json){

$("#textShow").html("姓名:"+json.name+" 性别:"+json.sex);

},

error:function(){

alert("fail");

}

})

服务器端;

// 使用jsonp实现跨域传输的方式,重点在于通过callback回调函数进行传递数据

$data=array("name"=>"张三","sex"=>"男");

$callback=$_GET['callback'];

echo $callback."(".json_encode($data).")";

方法二:使用CORS方式

之所以产生跨域问题是应为浏览器遵从同源策略,何为同源?所谓同源是指域名、协议、端口相同。只有在同源策略下才能够进行数据的交互。而跨域显然是不满足同源策略要求。所以为此提供了CORS方式,为要请求的目的服务器段加上header请求头便可实现客户端跨域请求。代码如下:

服务器端(PHP):

// 使用CORS进行处理跨域传输

echo "hello boy,我是通过CORS方式传输的";

// 允许 http://localhost:8080 发起的跨域请求

header("Access-Control-Allow-Origin:http://localhost:8080");

客户端:

$("#textShow").load("http://192.168.20.88:80/class/index.php");

jsonp的方式只支持get方式数据交互,而CORS方式可令客户端以同源策略下的各种方式请求数据。

如果把后面的网址改为*的话,就允许全部的网址跨域访问自己的网站了

header("Access-Control-Allow-Origin:*");

ajax+php跨域请求数据库,基于jQuery的ajax跨域请求,PHP作为服务器端代码相关推荐

  1. ajax前台转换json数据库,基于jQuery的ajax功能实现web service的json转化

    不过这篇文章的题目我真不知道该怎么起,如果你因为这个差劲的题目错过这个东西,那真的很可惜. 我在做这个东西之前参考了不少文章: 第一步需要做的是如何在Server端把一个datatable转坏为自己需 ...

  2. ajax 随机,基于JQuery及AJAX实现名人名言随机生成器

    基于JQuery及AJAX实现名人名言随机生成器 发布于 2017-05-05 06:56:38 | 137 次阅读 | 评论: 0 | 来源: 网友投递 jQuery javascript框架jQu ...

  3. Python入门自学进阶-Web框架——8、认识Ajax,与Django交互,基于jQuery

    基于jQuery的Ajax实现: jQquery中创建XMLHttpRequest对象就没有兼容性问题了,而且不需要前面的四个步骤,直接使用$.ajax(),通过设置相关的参数,如提交的方法,url, ...

  4. 基于jquery的ajax聊天室系统,基于jQuery的Ajax聊天室应用毕业设计(含外文翻译)...

    基于jQuery的Ajax聊天室应用毕业设计(含外文翻译) 毕业设计(论文) I 基于基于 jQuery 的的 Ajax 聊天室应用聊天室应用 摘摘 要要 随着网络的逐渐普及,以及网络技术的不断发展, ...

  5. ajax无刷新留言板远吗,基于jquery实现ajax无刷新评论

    基于jquery实现ajax无刷新评论 发布于 2017-03-31 11:26:07 | 75 次阅读 | 评论: 0 | 来源: 网友投递 jQuery javascript框架jQuery是一个 ...

  6. 源码来袭!!!基于jquery的ajax分页插件(demo+源码)

    前几天打开自己的博客园主页,发现自己的园龄竟然有4年之久了,没记错的话刚接触编程就知道了博客园,也就是说我入坑4年了?时光啊~.刚学习编程的时候最喜欢的就是来园子里听大神们吹牛逼,看着他们装逼就觉得很 ...

  7. js ajax获得对象怎么放到td上,jquery通过AJAX从后台获取信息并显示在表格上,并支持行选中...

    不想用Easyui的样式,但是想要他的表格功能,本来一开始是要到网上找相关插件的,但是没找到就开始自己写,没想到这么简单. 后台代码:(这个不重要) public ActionResult GetDi ...

  8. MFC基于TCP协议的CSocket类套接字服务器端代码示范

    MFC基于TCP协议的CSocket类套接字服务器端代码示范 https://blog.csdn.net/txwtech/article/details/93417667 转载于:https://ww ...

  9. 【Ajax】HTTP相关问题-GET-POST-XHR使用-jQuery中的ajax-跨域-同源-jsonp-cors

    文章目录 1. Ajax概述 1.1 AJAX 简介 1.2 XML 简介 1.3 AJAX 的特点 1.3.1 AJAX 的优点 1.3.2 AJAX 的缺点 2. HTTP相关问题 2.1 MDN ...

最新文章

  1. android列表勾选框,android listview实现复选框列表
  2. Linux下tomcat内存溢出分析及优化
  3. jQuery 之父:每天写代码
  4. 动态矩阵控制matlab程序_【实时关注】你了解MATLAB吗?
  5. 多项式求逆模板(NTT + mod)
  6. 类中的静态成员函数访问非静态成员变量
  7. 程序员面试金典 - 面试题 08.02. 迷路的机器人(DFS/动态规划)
  8. 实时“头发-面部皮肤”分割与人脸肤色分类
  9. 12 大热门事件背后,藏着你的 2020 年
  10. Opencv绘制HSV颜色直方图
  11. Scrum敏捷开发框架
  12. systemctl开机启动设置
  13. 老罗与西门子的公关战争
  14. VSCode常用插件和快捷键总结
  15. 《华盛人》技术服务支持
  16. Hadoop2.x与Hadoop3.x的默认端口变化
  17. 基于Echarts实现可视化数据大屏销售大数据分析系统
  18. 测试用例模板(个人习惯使用)
  19. 基于Lucene垂直搜索引擎的研究与开发实践报告
  20. 在Java中声明一个unsigned int

热门文章

  1. python 布尔值 bool( ) 与逻辑运算符
  2. JavaScript实现topologicalSort拓扑排序算法(附完整源码)
  3. wxWidgets:wxFileDialog类用法
  4. wxWidgets:线程间和进程间通信
  5. boost::set_difference相关的测试程序
  6. boost::python模块包装几个 C++ 函数 将二维数组操作为采用 NumPy 数组的 Python 函数作为参数
  7. boost::geometry::is_empty用法的测试程序
  8. boost::geometry模块自定义指针到点示例
  9. boost::enable_current_exception用法测试程序
  10. GDCM:VRDS的测试程序