从零开始学习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 相关文章推荐
找到一点可怜的关于dojo资料,谢谢作者!
Dec 06 Javascript
HTML代码中标签的全部属性 中文注释说明
Mar 26 Javascript
封装的原生javascript弹出层代码
Sep 24 Javascript
利用javascript解决图片缩放及其优化的代码
May 23 Javascript
表单的焦点顺序tabindex和对应enter键提交
Jan 04 Javascript
jquery对元素拖动排序示例
Jan 16 Javascript
JavaScript模拟重力状态下抛物运动的方法
Mar 03 Javascript
js图片轮播效果实现代码
Apr 18 Javascript
Webpack打包css后z-index被重新计算的解决方法
Jun 18 Javascript
小程序和web画三角形实现解析
Sep 02 Javascript
JavaScript创建表格的方法
Apr 13 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
Oct 21 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
零基础学JavaScript最新动画教程+iso光盘下载
2008/01/22 Javascript
jquery库文件略庞大用纯js替换jquery的方法
2014/08/12 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
jQuery 如何实现一个滑动按钮开关
2016/12/01 Javascript
jquery select2的使用心得(推荐)
2016/12/04 Javascript
关于Node.js的events.EventEmitter用法介绍
2017/04/01 Javascript
vue-cli配置环境变量的方法
2018/07/09 Javascript
[02:26]2016国际邀请赛8月3日开战 中国军团出征西雅图
2016/08/02 DOTA
python使用PIL给图片添加文字生成海报示例
2018/08/17 Python
Pandas0.25来了千万别错过这10大好用的新功能
2019/08/07 Python
Flask框架学习笔记之消息提示与异常处理操作详解
2019/08/15 Python
100行Python代码实现每天不同时间段定时给女友发消息
2019/09/27 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
python 解决selenium 中的 .clear()方法失效问题
2020/09/01 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
2020/09/03 Python
Python 连接 MySQL 的几种方法
2020/09/09 Python
美国独家设计师眼镜在线光学商店:Glasses Gallery
2017/12/28 全球购物
美国机场停车位预订:About Airport Parking
2018/03/26 全球购物
澳洲国民品牌乡村路折扣店:Country Road & Trenery Outlet
2018/04/19 全球购物
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
一些关于MySql加速和优化的面试题
2014/01/30 面试题
建筑毕业生自我鉴定
2013/10/18 职场文书
继承权公证书
2014/04/09 职场文书
保护环境倡议书500字
2014/05/19 职场文书
绿色环保家庭事迹材料
2014/08/31 职场文书
公司领导班子民主生活会对照检查材料
2014/10/02 职场文书
校园游戏活动新闻稿
2014/10/15 职场文书
2015秋季幼儿园开学寄语
2015/03/25 职场文书
超市采购员岗位职责
2015/04/07 职场文书
如何写辞职信
2015/05/13 职场文书
指导老师鉴定意见
2015/06/05 职场文书
Python Parser的用法
2021/05/12 Python