资讯专栏INFORMATION COLUMN

express中间层搭建前端项目3

yzzz / 2953人阅读

摘要:中间层搭建前端项目创建路由文件名称以及路径获取路由中间件来处理异常监听的错误事件模板辅助方法创建文件路径这里的点主要有两方面请求中间件流程控制中间件,有兴趣可以自行读取的引入全局变量全局变量文件路径全局变量本地创建文件文件路径以上接口

express中间层搭建前端项目2

创建路由

文件名称以及路径 routes/index.js

</>复制代码

  1. //获取路由中间件
  2. var getMoreMethod = require("../method_routes/getMore-method").getMoreMethod;
  3. module.exports = function(app, domain) {
  4. //domain来处理异常
  5. app.use(function(req, res, next) {
  6. var d = domain.create();
  7. //监听domain的错误事件
  8. d.on("error", function(err) {
  9. // res.statusCode = 500;
  10. res.statusCode = 404;
  11. res.render("htmlerror");
  12. d.dispose();
  13. });
  14. d.add(req);
  15. d.add(res);
  16. d.run(next);
  17. });
  18. //模板辅助方法
  19. //app.use(require("../ejs_fun/index"));
  20. app.get("/index",getMoreMethod);
  21. }
创建getMore-method

文件路径method_routes/getMore-method.js
这里的点主要有两方面1.async 2.request

</>复制代码

  1. var request = require("request");//nodejs请求中间件
  2. var async = require("async");//流程控制中间件,有兴趣可以自行读取async的api
  3. //引入全局变量
  4. require("../config/config");
  5. exports.getMoreMethod = function(req,res,next){
  6. async.waterfall([
  7. function(callback) {
  8. var data = {};
  9. request.get({url:Config.url+"api/4", formData: {}}, function(err, res, body) {
  10. if (err) {
  11. console.error("failed:", err);
  12. callback && callback(err);
  13. }else{
  14. data.f = JSON.parse(body);
  15. callback(null, data);
  16. }
  17. });
  18. },
  19. function(data, callback) {
  20. request.get({url:Config.url+"api/test2", formData: {}}, function(err, httpResponse, body) {
  21. if (err) {
  22. console.error("failed:", err);
  23. callback && callback(err);
  24. }else{
  25. data.t = JSON.parse(body);
  26. callback(null, data);
  27. }
  28. });
  29. },
  30. function(data, callback) {
  31. request.get({url:Config.url+"test/pos", formData: {}}, function(err, res, body) {
  32. if (err) {
  33. console.error("failed:", err);
  34. callback && callback(err);
  35. }else{
  36. data.p = JSON.parse(body);
  37. callback(null, data);
  38. }
  39. });
  40. }
  41. ], function(err, result) {
  42. res.render("getMore", {
  43. "result": result,
  44. "first":result.f,
  45. "two":result.t,
  46. "three":result.p
  47. });
  48. });
  49. }
全局变量

文件路径config/config

</>复制代码

  1. //全局变量
  2. global.Config = {
  3. url:"http://192.168.43.201:3009/"//本地ip
  4. }
创建ejs文件

文件路径 views/getMore.ejs

</>复制代码

  1. getMore
  2. <%for(var i in first){ %>
  3. <%if(i == "img"){%>
  4. <%}else{%>
  5. <%= first[i] %>
  6. <%}%>
  7. <%}%>

以上接口都是自行搭建mock数据,github地址node_api
搭建express项目已经差不多,欢迎大佬一起讨论

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/95704.html

相关文章

  • express间层搭建前端项目2

    摘要:上面一片文章已经介绍怎样创建服务端服务,这篇将搭建路由第一章搭建服务配置引入相关中间件文件读取压缩处理异常设置模板引擎使用相关中间件日志请求体解析中间对传入的进行解析后赋值给引入文件里面的静态资源包括引入路由文件路由文件读取抓取错误信 上面一片文章已经介绍怎样创建nodejs服务端服务,这篇将express搭建路由第一章搭建nodejs服务 配置app.js引入相关中间件 var ex...

    tianhang 评论0 收藏0
  • express间层搭建前端项目1

    摘要:从前端小白到精通首先需要自行下载安装安装地址我的版本是,安装之后,需要安装依赖以及生成调试工具,亲测对版本比较敏感,只兼容低版本的所以调试可以用或者用软件进行调试安装调试链接,下载包,忘记了模板引擎用的是,喜欢用其实一样,只是语法有 从前端小白到精通express 首先需要自行下载安装nodejs nodejs安装地址//我的版本是4.7.0, 安装nodejs之后,需要npm in...

    stefanieliang 评论0 收藏0
  • Node间层实践(二)——搭建项目框架

    摘要:项目地址脚手架使用过,的同学都清楚,官方推荐的安装方式是通过专用的来快速搭建一个由编译打包的项目框架。用在层的模块化,在中间层实现了模块化。这样,从中间层到前端都实现了热加载。 版权声明:更多文章请访问我的个人站Keyon Y,转载请注明出处。 项目地址:https://github.com/KeyonY/NodeMiddle 脚手架? 使用过angular2,vue2的同学都清楚,官...

    DrizzleX 评论0 收藏0
  • Express 搭建服务器

    摘要:指定需要处理的路由回调函数,即请求此路由的处理函数,它可以接收两个参数三个参数,四个参数。如果匹配到自定义的路由,立即执行回调函数,如果处理函数中没有则不再往下执行,如果执行了会继续向下匹配。 简介 Node.js® is a JavaScript runtime built on Chromes V8 JavaScript engine. Node.js uses an event-...

    CrazyCodes 评论0 收藏0
  • 如何打造一个令人愉悦的前端开发环境(三)

    摘要:的最后一个大招就是替换一些传统的服务端语言,例如,,等,在业务层上面使用来开发服务端完全不成问题。更多的的使用细节和技巧建议关注美团博客大搜车论坛下一篇我们开启如何结合和搭建一个开发环境和项目目录 往期回顾 前面2期都讲得是浏览器端的东西比较多,包括Webpack,虽然是Node处理的,但是还是浏览器端用的多,对于现在的前端开发来说,不懂一点服务端的东西,简直没办法活,一般的招聘要求都...

    cgh1999520 评论0 收藏0

发表评论

0条评论

yzzz

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<