function ajax(option) {
function objtostring(obj){
if(typeof obj===\’object\’ && !Array.isArray(obj)){
var arr=[];
for(var i in obj){
arr.push(i+\’=\’+obj[i]);
}
return arr.join(\’&\’);
}else{
throw new Error(\’请输入对象\’);
}
}
var ajax = new XMLHttpRequest();
//默认参数配置
option.type = option.type || \’get\’;
option.data = option.data || \’\’;
//判断接口地址是否存在
if(!option.url) {
throw new Error(\’请输入接口地址\’);
}
//数据传输
if(option.data && typeof option.data === \’object\’ && !Array.isArray(option.data)) { //对象
option.data = objtostring(option.data);
} else { //其他
option.data = option.data;
}
//是否异步
if(option.async== \’false\’ || option.async == false) {
option.async = false;
} else {
option.async = true;
}
//get方式
if(option.data && option.type == \’get\’) {
option.url += \’?\’ + option.data;
}
//post方式
ajax.open(option.type, option.url, option.async);
if(option.type == \’post\’) {
ajax.setRequestHeader(\’content-type\’, \’application/x-www-form-urlencoded\’);
ajax.send(option.data);
} else {
ajax.send();
}
if(!option.async) { //同步
if(ajax.status === 200) {
option.success && option.success(ajax.responseText);
} else {
option.error && option.error(\’接口地址有误\’ + ajax.status)
}
} else { //异步
ajax.onreadystatechange = function() {
if(ajax.readyState === 4) {
if(ajax.status === 200) {
option.success && option.success(ajax.responseText);
} else {
option.error && option.error(\’接口地址有误\’ + ajax.status)
}
}
}
}
}
2:前端向后端发送或是添加数据给后端到数据库,后端是如何接收的
3:后端接收成功数据并且把数据返回给前端
4:通过ajax后端将数据库的 信息渲染出来
5:这个时候前端当用户把信息提交的时候,后台数据库会显示了用户信息