摘要:中间层搭建前端项目创建路由文件名称以及路径获取路由中间件来处理异常监听的错误事件模板辅助方法创建文件路径这里的点主要有两方面请求中间件流程控制中间件,有兴趣可以自行读取的引入全局变量全局变量文件路径全局变量本地创建文件文件路径以上接口
express中间层搭建前端项目2
创建路由文件名称以及路径 routes/index.js
</>复制代码
//获取路由中间件
var getMoreMethod = require("../method_routes/getMore-method").getMoreMethod;
module.exports = function(app, domain) {
//domain来处理异常
app.use(function(req, res, next) {
var d = domain.create();
//监听domain的错误事件
d.on("error", function(err) {
// res.statusCode = 500;
res.statusCode = 404;
res.render("htmlerror");
d.dispose();
});
d.add(req);
d.add(res);
d.run(next);
});
//模板辅助方法
//app.use(require("../ejs_fun/index"));
app.get("/index",getMoreMethod);
}
创建getMore-method
文件路径method_routes/getMore-method.js
这里的点主要有两方面1.async 2.request
</>复制代码
var request = require("request");//nodejs请求中间件
var async = require("async");//流程控制中间件,有兴趣可以自行读取async的api
//引入全局变量
require("../config/config");
exports.getMoreMethod = function(req,res,next){
async.waterfall([
function(callback) {
var data = {};
request.get({url:Config.url+"api/4", formData: {}}, function(err, res, body) {
if (err) {
console.error("failed:", err);
callback && callback(err);
}else{
data.f = JSON.parse(body);
callback(null, data);
}
});
},
function(data, callback) {
request.get({url:Config.url+"api/test2", formData: {}}, function(err, httpResponse, body) {
if (err) {
console.error("failed:", err);
callback && callback(err);
}else{
data.t = JSON.parse(body);
callback(null, data);
}
});
},
function(data, callback) {
request.get({url:Config.url+"test/pos", formData: {}}, function(err, res, body) {
if (err) {
console.error("failed:", err);
callback && callback(err);
}else{
data.p = JSON.parse(body);
callback(null, data);
}
});
}
], function(err, result) {
res.render("getMore", {
"result": result,
"first":result.f,
"two":result.t,
"three":result.p
});
});
}
全局变量
文件路径config/config
</>复制代码
//全局变量
global.Config = {
url:"http://192.168.43.201:3009/"//本地ip
}
创建ejs文件
文件路径 views/getMore.ejs
</>复制代码
getMore
<%for(var i in first){ %>
<%if(i == "img"){%>

<%}else{%>
<%= first[i] %>
<%}%>
<%}%>
以上接口都是自行搭建mock数据,github地址node_api
搭建express项目已经差不多,欢迎大佬一起讨论
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/95704.html
摘要:上面一片文章已经介绍怎样创建服务端服务,这篇将搭建路由第一章搭建服务配置引入相关中间件文件读取压缩处理异常设置模板引擎使用相关中间件日志请求体解析中间对传入的进行解析后赋值给引入文件里面的静态资源包括引入路由文件路由文件读取抓取错误信 上面一片文章已经介绍怎样创建nodejs服务端服务,这篇将express搭建路由第一章搭建nodejs服务 配置app.js引入相关中间件 var ex...
摘要:从前端小白到精通首先需要自行下载安装安装地址我的版本是,安装之后,需要安装依赖以及生成调试工具,亲测对版本比较敏感,只兼容低版本的所以调试可以用或者用软件进行调试安装调试链接,下载包,忘记了模板引擎用的是,喜欢用其实一样,只是语法有 从前端小白到精通express 首先需要自行下载安装nodejs nodejs安装地址//我的版本是4.7.0, 安装nodejs之后,需要npm in...
摘要:项目地址脚手架使用过,的同学都清楚,官方推荐的安装方式是通过专用的来快速搭建一个由编译打包的项目框架。用在层的模块化,在中间层实现了模块化。这样,从中间层到前端都实现了热加载。 版权声明:更多文章请访问我的个人站Keyon Y,转载请注明出处。 项目地址:https://github.com/KeyonY/NodeMiddle 脚手架? 使用过angular2,vue2的同学都清楚,官...
摘要:指定需要处理的路由回调函数,即请求此路由的处理函数,它可以接收两个参数三个参数,四个参数。如果匹配到自定义的路由,立即执行回调函数,如果处理函数中没有则不再往下执行,如果执行了会继续向下匹配。 简介 Node.js® is a JavaScript runtime built on Chromes V8 JavaScript engine. Node.js uses an event-...
摘要:的最后一个大招就是替换一些传统的服务端语言,例如,,等,在业务层上面使用来开发服务端完全不成问题。更多的的使用细节和技巧建议关注美团博客大搜车论坛下一篇我们开启如何结合和搭建一个开发环境和项目目录 往期回顾 前面2期都讲得是浏览器端的东西比较多,包括Webpack,虽然是Node处理的,但是还是浏览器端用的多,对于现在的前端开发来说,不懂一点服务端的东西,简直没办法活,一般的招聘要求都...
阅读 3841·2021-10-18 13:33
阅读 899·2019-08-30 14:20
阅读 2711·2019-08-30 13:14
阅读 2585·2019-08-29 18:38
阅读 2950·2019-08-29 16:44
阅读 1270·2019-08-29 15:23
阅读 3609·2019-08-29 13:28
阅读 1988·2019-08-28 18:00
极致性价比!云服务器续费无忧!
Tesla A100/A800、Tesla V100S等多种GPU云主机特惠2折起,不限台数,续费同价。
NVIDIA RTX 40系,高性价比推理显卡,满足AI应用场景需要。
乌兰察布+上海青浦,满足东推西训AI场景需要