Node.js多页面如何实现数学运算的client端和server端
这篇文章将为大家详细讲解有关Node.js多页面如何实现数学运算的client端和server端,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
创新互联主营环县网站建设的网络公司,主营网站建设方案,重庆App定制开发,环县h5重庆小程序开发公司搭建,环县网站营销推广欢迎环县等地区企业咨询
具体如下:
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);
测试结果:
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端”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
当前标题:Node.js多页面如何实现数学运算的client端和server端
路径分享:http://cdiso.cn/article/gohoco.html