AJAX阶段知识点整理
2017-01-24 15:17:21 0 举报
AI智能生成
AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不影响网页的情况下,与服务器交换数据并更新部分网页内容。使用Ajax技术,用户可以更加快速地获取数据、更流畅地浏览网页,提高用户体验。常见的AJAX应用有在线聊天室、实时更新的天气预报等。
作者其他创作
大纲/内容
HTTP协议
请求消息
请求起始行
请求方法
GET
POST
PUT
DELETE
HEAD
TRACE
CONNECT
OPTIONS
空格
请求URI
空格
协议版本
请求头部
Content-Type
text/plain
application/x-www-form-urlencoded
multipart/form-data
CRLF
请求主体
响应消息
响应起始行
协议版本
空格
响应状态码
1xx 提示
2xx 成功
3xx 重定向
4xx 客户端错误
5xx 服务器端错误
空格
原因短句
响应头部
Content-Type
text/plain
text/html
application/javascript
application/xml
application/json
image/jpeg
audio/mpeg3
....
CRLF
响应主体
原生AJAX
概述
使用XHR发起请求
发起GET请求
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = function(){}
xhr.open(’GET', 'x.php?k=v', true)
xhr.send( null )
发起POST请求
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = function(){}
xhr.open(’POST', 'x.php', true)
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
xhr.send( 'k=v&k=v' )
使用XHR接收响应
text
服务器端
header('Content-Type: text/plain')
echo 'succ';
客户端
if( xhr.responseText === 'succ'){ }
html
服务器端
header('Content-Type: text/html')
echo '<li></li>';
客户端
parent.innerHTML = xhr.responseText
script
服务器端
header('Content-Type: application/javascript')
echo 'alert(123)';
客户端
eval( xhr.responseText )
xml
json
服务器端
header('Content-Type: application/json')
echo '{ "code":1, "msg": "succ" }';
echo json_encode( $arr );
客户端
JSON.parse( xhr.responseText )
数据库服务器
DDL
CREATE DATABASE jd CHARSET=UTF8;
CREATE TABLE jd_user(uid INT, uname VARCHAR(32));
DROP DATABASE IF EXISTS jd;
DROP TABLE jd_users;
ALTER ....
TRUNCATE ....
DML
INSERT INTO jd_user VALUES(101, 'Tom');
DELETE FROM jd_user WHERE uid=101;
UPDATE jd_user SET uname='Tommy' WHERE uid=101;
DQL
SELECT * FROM jd_user WHERE uid=101;
DCL
GRANT ...
REVOKE ...
Web服务器
静态Web服务器
提供的内容任何人任何时间访问都是一样的
HTML/CSS/JS/Flash/图片/音视频
动态Web服务器
提供的内容不同人不同时间访问是不一样的
JSP
ASP.NET
PHP
string
'age: $age'
"age: $age"
array
[ 10, 30, 50 ]
json_encode()编码为JSON [ ]
[ 'score1'=>10, 'score2'=>30 ]
json_encode()编码为JSON { }
foreach
foreach($arr as $v){ }
foreach($arr as $k=>$v){ }
常用的函数
header( )
die( )
require( )
mysqli_connect( )
mysqli_query( )
mysqli_insert_id( )
mysqli_affected_rows( )
mysqli_fetch_row( )
mysqli_fetch_assoc( )
mysqli_fetch_all( )
Node.js
jQuery中的AJAX
$('选择器').load('x.php', [data], [fn])
$.get('x.php', [data], fn )
$.post('x.php', data, fn )
$.ajax( {
type: 'GET',
url: 'x.php',
data: {k:v, k:v},
beforeSend: fn,
success: fn,
error: fn,
complete: fn
} )
0 条评论
下一页