从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例


Posted in Javascript onApril 13, 2017

本文实例讲述了Node.js多页面实现数学运算的client端和server端。分享给大家供大家参考,具体如下:

1、server端

支持数学运算的服务器,服务器的返回结果用json对象表示。

math-server.js

//通过监听3000端口使其作为Math Wizard的后台程序
var math = require('../nodejsExample3/math.js');
var express = require('express');
var app = express();
app.configure(function(){
  app.use(app.router);
  //默认的错误处理函数,显示栈轨迹
  //如果要显示用户友好的错误,app.err(function(err, req, res, next){
  // res.send(error page); //or res.render('template');
  // });
  app.use(express.errorHandler({
    dumpExceptions: true, showStack: true
  }));
});
app.get('/fibonacci/:n', function(req, res, next){
  math.fibonacciAsync(Math.floor(req.params.n), function(val){
    res.send({n: req.params.n, result: val});
  })
});
app.get('/factorial/:n', function(req, res, next){
  res.send({n: req.params.n, result: math.factorial(Math.floor(req.params.n))});
});
app.get('/mult/:a/:b', function(req, res, next){
  res.send({a: req.params.a, b: req.params.b, result: req.params.a * req.params.b});
});
app.get('/square/:a', function(req, res, next){
  res.send({a: req.params.a, result: req.params.a * req.params.a});
});
app.listen(3000);

测试结果:

从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例

2、client端

http.request方法会创建一个HTTP请求,并将URL元素分割到参数对象中,res.on语句里声明的回调函数会在HTTP相应数据到达时触发。

每当app.get请求处理函数调用res.send,它的HTTP相应会反过来让res.on('data'...)处理函数 等待响应的产生

math-client.js

var http = require('http');
var util = require('util');
[
  "/factorial/20","/factorial/20",
  "/mult/10/20","/square/12"
].forEach(function(path){
    var req = http.request({
      host: "localhost",
      port: 3000,
      path: path,
      method: 'GET'
    }, function(res){
      res.on('data', function(chunk){
        util.log('BODY: ' + chunk);
      });
    });
    req.end();
});

先启动server,然后再测试client。

从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例

希望本文所述对大家nodejs程序设计有所帮助。

Javascript 相关文章推荐
javascript检查日期格式的函数[比较全]
Oct 17 Javascript
Jquery 组合form元素为json格式,asp.net反序列化
Jul 09 Javascript
jQuery jcrop插件截图使用方法
Nov 20 Javascript
jquery中val()方法是从最后一个选项往前读取的
Sep 06 Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
Jun 08 Javascript
canvas实现图像放大镜
Feb 06 Javascript
vue2.0项目中使用Ueditor富文本编辑器示例代码
Aug 14 Javascript
AnglarJs中的上拉加载实现代码
Feb 08 Javascript
Layui 设置select下拉框自动选中某项的方法
Aug 14 Javascript
微信小程序实现上传word、txt、Excel、PPT等文件功能
May 23 Javascript
weui中的picker使用js进行动态绑定数据问题
Nov 06 Javascript
Vue 打包体积优化方案小结
May 20 Javascript
JS传参及动态修改页面布局
Apr 13 #Javascript
从零开始学习Node.js系列教程之基于connect和express框架的多页面实现数学运算示例
Apr 13 #Javascript
MUI 解决动态列表页图片懒加载再次加载不成功的bug问题
Apr 13 #Javascript
MUI  Scroll插件的使用详解
Apr 13 #Javascript
MUI 上拉刷新/下拉加载功能实例代码
Apr 13 #Javascript
从零开始学习Node.js系列教程四:多页面实现的数学运算示例
Apr 13 #Javascript
mui上拉加载功能实例详解
Apr 13 #Javascript
You might like
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
THINKPHP内容分页代码分享
2015/01/14 PHP
php实现cookie加密的方法
2015/03/10 PHP
php实现图片转换成ASCII码的方法
2015/04/03 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
JavaScript的eval JSON object问题
2009/11/15 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
如何在Angular.JS中接收并下载PDF
2016/11/26 Javascript
用v-html解决Vue.js渲染中html标签不被解析的问题
2016/12/14 Javascript
微信小程序图表插件(wx-charts)实例代码
2017/01/17 Javascript
canvas红包照片实例分享
2017/02/28 Javascript
妙用Angularjs实现表格按指定列排序
2017/06/23 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
2018/01/09 Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
2019/04/22 Javascript
利用原生JS实现data方法示例代码
2019/05/28 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
JavaScript中的类型检查
2020/02/03 Javascript
Node.js中的异步生成器与异步迭代详解
2021/01/31 Javascript
浅析python 中__name__ = '__main__' 的作用
2014/07/05 Python
用TensorFlow实现多类支持向量机的示例代码
2018/04/28 Python
python opencv人脸检测提取及保存方法
2018/08/03 Python
解决keras backend 越跑越慢问题
2020/06/18 Python
Python2手动安装更新pip过程实例解析
2020/07/16 Python
简述 Python 的类和对象
2020/08/21 Python
python里glob模块知识点总结
2021/01/05 Python
CSS3绘制有活力的链接下划线
2016/07/14 HTML / CSS
Data URI scheme详解和使用实例及图片base64编码实现方法
2014/05/08 HTML / CSS
德国香水、化妆品和护理产品网上商店:Parfumdreams
2018/09/26 全球购物
JDO的含义
2012/11/17 面试题
天鹅的故事教学反思
2014/02/04 职场文书
支部书记四风问题自我剖析材料
2014/09/29 职场文书
派出所班子党的群众路线对照检查材料思想汇报
2014/10/01 职场文书
2015元旦联欢晚会结束语
2014/12/14 职场文书
模范教师材料大全
2014/12/16 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python