ajax个人总结

一、 ajax概念

Ajax 全称为:“Asynchronous [e’sɪŋkrənəs] JavaScript and XML”
是 异步 JavaScript 和 XML。
可以无刷新状态更新页面。

二、HTTP

1、HTTP概念

http是计算网络通信的规则
htpp 默认接口80
https 默认接口443
HTTP是一种无状态协议(不建议持久连接)
无状态:是指协议对于事务处理没有记忆能力

2、HTTP的7个请求步骤

域名解析 –> 发起TCP的3次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等) –> 浏览器对页面进行渲染呈现给用户

3、HTTP的状态码

状态码
1xx:信息响应类,表示接收到请求并且继续处理
200(成功) 服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。

		200  GET 请求成功
		201 POST请求成功
		204 只返回请求头

3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理

307 重定向 该向Location里的URI重新发起
301 永久重定向
303 资源在别处
304 资源没有修改

404(未找到) 服务器找不到请求的网页。例如,对于服务器上不存在的网页经常会返回此代码。

401 没有权限
403 禁止访问
404 资源地址错误

505(HTTP 版本不受支持) 服务器不支持请求中所使用的 HTTP 协议版本。

500  服务端错误
503  服务端超载
504错误代表网关超时 (Gateway timeout),是指服务器作为网关或代理,但是没有及时从上游服务器收到请求。

三、原生JS实现ajax

原生js实现ajax
1、创建XMLHttpRequest对象 var xhr=new XMLHttpRequesr()
2、打开接口 建立联系 xhr.open(参数1,参数2,[参数3])
参数1:请求方式 get post
参数2:接口 url路径
参数3:是否为异步 默认true 异步
3、发送数据 xhr.send();
4、增加状态改变事件
xhr.onreadystatechange=function(){
xhr.readyState 准备状态 4
xhr.status 状态码 200
xhr.responseText 数据
}

<body>
	<input type="text" name="" id="name" placeholder="请输入用户名" value="" />
	<input type="text" name="" id="age" placeholder="请输入年龄" value="" />
	<button type="button" id="btn">发送</button>
	<p id="content"></p>
	<script type="text/javascript">
			btn.onclick = function(){
			var xhr = new XMLHttpRequest();
			var name = document.getElementById("name").value;
			var age = document.getElementById("age").value;
			xhr.open("POST","https://www.520mg.com/ajax/echo.php",false);
			xhr.onreadystatechange=function(){
				if(xhr.status==200&&xhr.readyState==4){
					content.innerHTML=xhr.responseText;
				}
			}
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			xhr.send(`name=${name}&age=${age}`);
		}
	
	
	</script>   
	
</body>

四、GET与POST请求的区别和同步、异步

1、GET与POST请求的区别

get形式请求数据,参数会以明文的形式拼接在url地址的后面,请求的长度受到url地址格式的限制;一般敏感信息不建议用get方式

post形式请求数据,参数会打包到请求对象中进行传递,不会显示在url地址中。数据请求的安全性比较GET而言更加隐秘

get方式参数长度受url地址限制,post方式不受限制

get方式请求的数据可能使唤村里的信息,post方式不能缓存

2、同步与异步

同步与异步
同步:不同的事情按照先后顺序执行,后一件事情必须等前一件事情执行完才能执行,否则处于等待状态
异步:不同事情同时执行,没有先后顺序

五、jQuery操作ajax和json与jsonp的区别

Jquery操作ajax

1、最底层$ajax()

参数:必须 对象{namevalue…}
对象里属性与属性值
url 请求的路径
data 待发送数据 值{}
dataType 返回数据类型"json", “html”, “text” ,…
success 回调函数 请求成功后调用的回调函数
type 请求的方式 “GET”, “POST” 默认get方式
beforeSend 函数 发送请求之前的函数
error 函数 请求失败后调用的函数

2、第二层方法

$.get(参数1,参数2,参数3,参数4)
前三个参数与load()方法用法一样 参数4:可选 返回数据类型 “json”,“javascript”,“html”.“xml”,“json”,“text”…
. p o s t ( 参 数 1 , 参 数 2 , 参 数 3 , 参 数 4 ) 用 法 与 .post(参数1,参数2,参数3,参数4) 用法与 .post(1234)get()方法一样

3、最高层方法

$.getScript((参数1,参数2)
参数1:必须 服务器请求地址
参数2:可选 回调函数
$.getJSON(参数1,参数2,参数3)
参数1:必须 服务器请求地址
参数2:可选 待发送的数据0
参数3:回调函数
jquery对象.load(参数1,参数2,参数3)
load()常用于加载静态文件
1,参数1:url 必需 待加载的路径
2,data 可选,待发送的数据
3,callback 可选,
回调函数 在函数内部返回请求的数据
回调函数上有三个可选函数:
function(res,statusText,xhr){
res 返回结果 xhr.responseText
statusText 状态码对应的字符转
xhr XMLHttpRequest对象
}

4、json与jsonp的区别

json是一种数据类型
jsonp是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。(不支持post请求)

六、url组成及其他

1、url组成

https:www.520mg.com:443/ajax/echo.php?name=mumu&age=18#cate
https 协议
www子域名
520mg.com 域名
:443 端口号
/ajax/echo.php 路径
?name=mumu&age=18 查询条件
#cate 哈希值

2、浏览器同源策略

浏览器同源策略
当浏览器去访问服务器资源(ajax) 要求服务器的地址与浏览器同源
协议,域名,子域名,端口号要一致

3、跨域

跨域
绕过浏览器的同源策略,请求到数据

跨域方式
1. 服务器响应头信息跨域
Access-Control-Allow-Origin: *
2. jsonp跨域
3. 服务器代理(开发)









好了,暂时就这么多,没了。

  • 15
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
搭建个人博客是非常合适的应用场景之一,而Go语言作为一门简洁高效的编程语言,也可以用来实现这个目标。下面是一些关于使用Go语言搭建个人博客的优势和步骤。 首先,让我们看一下使用Go语言搭建个人博客的优势: 1. 高效稳定:Go语言具有高并发性能和出色的部署特性,可以确保你的个人博客在高流量情况下依然稳定运行。 2. 直接生成静态文件:使用Go语言编写博客程序时,可以直接生成静态文件,无需依赖数据库或其他复杂的系统组件。 3. 跨平台性:Go语言可以在多个操作系统上运行,不仅可以在Linux服务器上使用,还可以在Windows或Mac机器上进行开发。 下面是使用Go语言搭建个人博客的步骤: 1. 确定功能需求:在开始搭建个人博客之前,需要明确自己的功能需求,例如文章列表、分类、标签、评论等。根据需求确定后台和前台的功能。 2. 设计数据库结构:根据需求设计数据库结构,用于存储博客文章、分类、标签、用户等信息。 3. 开发后台接口:通过使用Go语言的Web框架,可以开发后台接口,实现博客文章的增删改查,用户登录注册等功能。 4. 设计前端页面:使用HTML和CSS等技术设计前端页面,展示博客文章、分类、标签等信息。 5. 前后端数据交互:通过Ajax等技术实现前后端数据交互,例如前端通过接口获取博客文章列表,后台接收到前端请求后,查询数据库并返回对应的结果。 6. 部署与发布:将开发好的博客程序部署到服务器上,并配置好域名和网络环境,确保博客可以正常访问。 总结起来,使用Go语言搭建个人博客可以提供高效稳定的性能,通过合理的功能设计和数据库结构,加上前后端的配合,可以实现一个完善的个人博客系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值