从零开始学习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 相关文章推荐
Jquery 例外被抛出且未被接住原因介绍
Sep 04 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
Mar 27 Javascript
js实现每日自动换一张图片的方法
May 04 Javascript
简单讲解jQuery中的子元素过滤选择器
Apr 18 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
Dec 05 Javascript
jQuery选择器之基本过滤选择器用法实例分析
Feb 19 jQuery
详解如何提升JSON.stringify()的性能
Jun 12 Javascript
JS中async/await实现异步调用的方法
Aug 28 Javascript
Vue axios 将传递的json数据转为form data的例子
Oct 29 Javascript
微信小程序实现页面浮动导航
Jan 08 Javascript
JavaScript实现多球运动效果
Sep 07 Javascript
JS实现放大镜效果
Sep 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
php中根据某年第几天计算出日期年月日的代码
2011/02/24 PHP
PHP中isset()和unset()函数的用法小结
2014/03/11 PHP
laravel请求参数校验方法
2019/10/10 PHP
jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码
2011/04/27 Javascript
将input file的选择的文件清空的两种解决方案
2013/10/21 Javascript
jquery+json实现数据列表分页示例代码
2013/11/15 Javascript
js生成动态表格并为每个单元格添加单击事件的方法
2014/04/14 Javascript
关于img的href和src取变量及赋值的方法
2014/04/28 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
JavaScript将取代AppleScript?
2014/09/18 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
JavaScript正则表达式函数总结(常用)
2018/02/22 Javascript
vue.js的computed,filter,get,set的用法及区别详解
2018/03/08 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
全面解读Python Web开发框架Django
2014/06/30 Python
Python使用面向对象方式创建线程实现12306售票系统
2015/12/24 Python
win与linux系统中python requests 安装
2016/12/04 Python
详解django中自定义标签和过滤器
2017/07/03 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
Python多层装饰器用法实例分析
2018/02/09 Python
python web自制框架之接受url传递过来的参数实例
2018/12/17 Python
linux环境中没有网络怎么下载python
2019/07/07 Python
Python matplotlib图例放在外侧保存时显示不完整问题解决
2020/07/28 Python
python 用pandas实现数据透视表功能
2020/12/21 Python
Beauty Expert美国/加拿大:购买奢侈美容产品
2018/12/05 全球购物
进程的查看和调度分别使用什么命令
2013/12/14 面试题
大学军训感言
2014/01/10 职场文书
高中生期末评语
2014/01/28 职场文书
烹饪大赛策划方案
2014/05/26 职场文书
预备党员转正材料
2014/12/19 职场文书
父亲节寄语大全
2015/02/27 职场文书
公司规章制度范本
2015/08/03 职场文书
MySQL常见优化方案汇总
2022/01/18 MySQL