首页 > Web开发 > 详细

ajax前后端交互原理(5)

时间:2019-12-13 09:48:10      阅读:95      评论:0      收藏:0      [点我收藏+]

5.ajax简介

5.1.什么是ajax

Asynchronous JavaScript and XML ,异步的javascript和XML

5.2.使用ajax有什么用

数据交互,可以从服务器获取到数据,也可以从前台把数据发送到后台服务器

5.3.如何使用ajax

5.3.1 ajax程序流程

ajax技术就相当于使用js引擎去模拟浏览器提交的行为,试想一下,如果要去访问一个网页要经历几个步骤?

1、打开浏览器

2、输入网址

3、回车提交 发送请求

4、等待服务器响应 返回内容

ajax技术使用js引擎去发送数据实际上也有以上几个步骤。

举个栗子: index.html代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<button id="btn">获取数据</button>
<div id="box"></div>
<script>
  var oBtn = document.getElementById('btn');
  var oBox = document.getElementById('box');
  oBtn.onclick = function () {
    var xhr = new XMLHttpRequest();
    xhr.open('get', '/getdata', true);
    xhr.send();
    xhr.onreadystatechange = function () {
      if(xhr.readyState === 4 && xhr.status === 200){
        oBox.innerText = xhr.responseText;
      }
    }
  }
</script>
</body>
</html>

下面是服务器端index.js代码:

var http = require('http');
var url = require('url');
var fs = require('fs');
var app = http.createServer(function (req, res) {
  res.setHeader('content-type', 'text/html;charset=utf-8');
  var url_obj = url.parse(req.url);
  if(url_obj.pathname === '/'){
    fs.readFile('./index.html','utf-8', function (err, data) {
      if(!err){
        res.write(data);
        res.end();
      }
    })
  }
  // 处理ajax请求
  if(url_obj.pathname === '/getdata'){
    res.write('hello world');
    res.end();
  }
});
app.listen(3000);

ajax和form分布同后台交互图比较:
技术分享图片

螺钉课堂视频课程地址:http://edu.nodeing.com

ajax前后端交互原理(5)

原文:https://www.cnblogs.com/dadifeihong/p/12033243.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!