从零开始学习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 相关文章推荐
js控制表单操作的常用代码小结
Aug 15 Javascript
在firefox和Chrome下关闭浏览器窗口无效的解决方法
Jan 16 Javascript
javascript实现2048游戏示例
May 04 Javascript
JavaScript中获取鼠标位置相关属性总结
Oct 11 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
Oct 17 Javascript
100多个基础常用JS函数和语法集合大全
Feb 16 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
Apr 13 Javascript
js 奇葩技巧之隐藏代码
Aug 11 Javascript
简单快速的实现js计算器功能
Aug 17 Javascript
浅谈vue路径优化之resolve
Oct 13 Javascript
Vue实现搜索结果高亮显示关键字
May 28 Javascript
深入理解基于vue-cli的webpack打包优化实践及探索
Oct 14 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
php获取某个目录大小的代码
2008/09/10 PHP
php实现发送微信模板消息的方法
2015/03/07 PHP
PHP生成图片缩略图类示例
2017/01/12 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
禁止直接访问php文件代码分享
2020/05/05 PHP
htm调用JS代码
2007/03/15 Javascript
Extjs Ext.MessageBox.confirm 确认对话框详解
2010/04/02 Javascript
js Select下拉列表框进行多选、移除、交换内容的具体实现方法
2013/08/13 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
jquery 添加节点的几种方法介绍
2013/09/04 Javascript
js 本地预览的简单实现方法
2014/02/18 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
2016/11/15 Javascript
jQuery实现 RadioButton做必选校验功能
2017/06/15 jQuery
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
Vue项目中使用better-scroll实现一个轮播图自动播放功能
2018/12/03 Javascript
ES6基础之 Promise 对象用法实例详解
2019/08/22 Javascript
javascript实现简单打字游戏
2019/10/29 Javascript
jQuery事件模型默认行为执行顺序及trigger()与 triggerHandler()比较实例分析
2020/04/30 jQuery
js实现点击烟花特效
2020/10/14 Javascript
python批量替换多文件字符串问题详解
2018/04/22 Python
pygame实现非图片按钮效果
2019/10/29 Python
python无序链表删除重复项的方法
2020/01/17 Python
Python2与Python3的区别详解
2020/02/09 Python
英国高级百货公司:Harvey Nichols
2017/01/29 全球购物
skyn ICELAND官网:冰岛成分天然护肤品
2020/08/24 全球购物
年会活动策划方案
2014/01/23 职场文书
工艺工程师岗位职责
2014/03/04 职场文书
《登鹳雀楼》教学反思
2014/04/09 职场文书
中秋寄语大全
2014/04/11 职场文书
创业融资计划书
2014/04/25 职场文书
董事长秘书工作职责
2014/06/10 职场文书
刑事辩护授权委托书范本
2014/10/17 职场文书
单位接收函格式
2015/01/30 职场文书