前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AJAX的一个简单实例,跨域的解决,使用JQuery来进行ajax的调用

AJAX的一个简单实例,跨域的解决,使用JQuery来进行ajax的调用

作者头像
学长冷月
发布2020-08-02 16:13:49
6.2K0
发布2020-08-02 16:13:49
举报
文章被收录于专栏:冷月带你手撕代码

1.什么是AJAX

ajax(Asynchronous Javascript And XML),中文名为异步的js和xml。可以在不刷新网页的情况下与后台服务器进行通讯,加强用户的体验感。是目前广泛使用的前端技术,下面将用原生js和JQuery来介绍一个简单的ajax实例。

2.一个简单的AJAX实例

get请求
代码语言:javascript
复制
// 采用原生的js代码(get请求)
//1.实例化XMLHttpRequest对象
var request = new XMLHttpRequest();
//2.调用open方法,第一个参数为请求方式(get、post),第二个参数为请求地址,第三个参数为异步或者同步
 request.open("GET", "请求url",true);
 //3.发送请求
 request.send();
 //4.监听服务器响应数据
 request.onreadystatechange = function () {
            if (request.readyState === 4) {
                if (request.status === 200) {
                    console.log(request.responseText);//打印服务器响应的数据
                }else {
                    alert("错误");
                }
            }
        }
post请求,注意post请求必须添加响应头
代码语言:javascript
复制
// 采用原生的js代码(post请求)
//1.实例化XMLHttpRequest对象
var request = new XMLHttpRequest();
//2.调用open方法,第一个参数为请求方式(get、post),第二个参数为请求地址,第三个参数为异步或者同步
 request.open("POST", "请求url",true);
 //3.准备数据
 var data = ['key' = 'value'];
 //4.设置响应头,注意post请求必须添加响应头
 request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
 //5.发送请求
 request.send(data);
 //6.监听服务器响应数据
 request.onreadystatechange = function () {
            if (request.readyState === 4) {
                if (request.status === 200) {
                    console.log(request.responseText);//打印服务器响应的数据
                }else {
                    alert("错误");
                }
            }
        }

3.采用JQuery内置的方法来调用ajax

get请求
代码语言:javascript
复制
//JQuery
<script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.js"></script>//引入jq库
$.ajax({
	type: "GET",	
	url: "请求url",
	dataType: "json",
	success: function(data) {
		//请求成功后回调函数
	},
	error: function(jqXHR){
		//请求失败后回调函数
	},
});
post请求
代码语言:javascript
复制
//JQuery
<script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.js"></script>//引入jq库
$.ajax({
	type: "POST",	
	url: "请求url",
	data:{
		key:value
	},
	dataType: "json",
	success: function(data) {
		//请求成功后回调函数
	},
	error: function(jqXHR){
		//请求失败后回调函数
	},
});

4.解决跨域问题

http://www.abc.com:8080/index.php
协议.二级域名.域名:端口号/目标脚本文件

跨域是用ajax异步请求时经常遇到的问题,只要协议、域名、端口号其中一个不同,就产生了跨域访问,解决的方法很简单,建议利用XHR2方法,在后台进行操作从而实现跨域支持IE9以上在服务器设置以下2个请求头就可以解决:

代码语言:javascript
复制
header('Access-Control-Allow-Origin:*'); //*为支持所有地址跨域,可以改为只允许特定地地址跨域
header('Access-Control-Allow-Methods:POST,GET');//POST、GET为允许的请求方式
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 学长冷月 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.什么是AJAX
    • ajax(Asynchronous Javascript And XML),中文名为异步的js和xml。可以在不刷新网页的情况下与后台服务器进行通讯,加强用户的体验感。是目前广泛使用的前端技术,下面将用原生js和JQuery来介绍一个简单的ajax实例。
    • 2.一个简单的AJAX实例
    • 3.采用JQuery内置的方法来调用ajax
    • 4.解决跨域问题
    相关产品与服务
    云服务器
    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档