运用NodeJs环境并依赖第三方库,框架等实现网站前后端分离报错问题及处理方法
运用NodeJs环境并依赖第三方库,框架等实现网站前后端分离报错问题及处理方法
问题一:
SyntaxError: missing ) after argument list in .....\views\user\index.html while compiling ejs。
语法错误:失去右括号)在参数列表后面,在.....\views\user\index.html(在这个路径中的index.html)中当编译ejs时。
分析:这个时候应该是模板引擎ejs出现问题,但是ejs已经是一个写好的模板库,是没有问题的,所以我们应该去替换的页面查找问题。
处理方法: 这个时候我们应该去inndex.html中查找问题,特别注意定界符<% %>中的内容,我们只要关注与index.html文件,这样减小了排错的范围,理清思路就可以排除问题了。
问题二:
Trying to open unclosed connection.
尝试去打开没有关闭的连接。
分析: 通过connection我们可以想到连接数据库的操作mongoose.connect('mongodb://localhost/数据库名称');因此我们可能是多次使用了连接数据库的操作(这是因为在routers文件夹下,每个JS文件都写)或者在操作完成后我们并没有关闭数据库(方法一:mongoose.connection.close(); 等同于 db.close(). 方法二:mongoose.disconnect();)
处理方法: 我们就连接一次数据库,并不多次连接数据库。在express自定义项目名称下新建libs文件夹,在libs下新建model.js,内容如下
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/数据库名称');
exports.mongoose = mongoose;
在routes文件夹下的JS文件,引入为
var mongoose = require('../libs/model.js').mongoose; 然后再定义模型。
问题三:
can't set headers after they are sent.
发送后不能再设置头部(个人理解是请求和响应中的头部)
写express犯的错,当初做项目的时候我的想法是响应页面后,3秒跳转到注册页,结果报错,尝试了很久我解决方法是去除一个res方法就好了),代码如下
router.get('/jump', function(req, res){
//给用户响应views目录下的文件
res.render('user/jump', {success: req.flash('success').toString(), error: req.flash('error').toString() });
setTimeout(function() {
//重定向到users文件夹下的reg.html
res.redirect('/users/reg');
},3000);
});
处理办法就是去除其中一个res方法就可以了,但是就达不到需求了,由于能力有限,目前还没有解决这个需求问题。有参考到这篇博文,但是我的问题并不是因为NodeJs的异步方式产生的,特此记录,以便以后可以避免这个问题。
运用NodeJs环境并依赖第三方库,框架等实现网站前后端分离报错问题及处理方法的更多相关文章
- nodeJS(express4.x)+vue(vue-cli)构建前后端分离详细教程(带跨域)
好想再回到大学宿舍,当时床虽小,房随小,但是心确是满的 ----致 西安工程大学a-114舍友们 转载请注明出处:水车:http://www.cnblogs.com/xuange306/p/6185 ...
- Maven多模块,Dubbo分布式服务框架,SpringMVC,前后端分离项目,基础搭建,搭建过程出现的问题
现互联网公司后端架构常用到Spring+SpringMVC+MyBatis,通过Maven来构建.通过学习,我已经掌握了基本的搭建过程,写下基础文章为而后的深入学习奠定基础. 首先说一下这篇文章的主要 ...
- 在python 3.6下用pip 安装第三方库,比如pip install requests,老是报错 Fatal error in launcher: Unable to create process using '"'
解决办法:我把python.exe 修改为了python3.exe ,为了兼容python2, 后来把python2从环境变量里删除,把python3.exe修改为了python.exe 就解决了,再 ...
- android implementation 依赖第三方库
依赖第三方库
- 前后端分离Java后端主流开发环境框架20200622
开发环境: IDE:IntelliJ IDEA 2017+ DB: mysql5.7.4.PostgreSQL.mongoDB.redis JDK:JDK1.8+ Maven:Maven 3.2.3+ ...
- [原创]基于VueJs的前后端分离框架搭建之完全攻略
首先请原谅本文标题取的有点大,但并非为了哗众取宠.本文取这个标题主要有3个原因,这也是写作本文的初衷: (1)目前国内几乎搜索不到全面讲解如何搭建前后端分离框架的文章,讲前后端分离框架思想的就更少了, ...
- (转)也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)
原文链接:http://ued.taobao.org/blog/2014/04/full-stack-development-with-nodejs/ 随着不同终端(pad/mobile/pc)的兴起 ...
- 也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)
前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们重新思考了“前后端”的定义,引入前端同学都熟悉的NodeJS,试图 ...
- 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二七║ Nuxt 基础:框架初探
缘起 哈喽大家好,又是周四了,俗话说周四来了,周末还远么哈哈,老张我也想下周请假,来个16天的大长假哟,不知道大家是怎么请假的,近来发现文章下边已经没有人评论了,赶脚比较凄凉了,大家看到的麻烦点个赞呀 ...
随机推荐
- CF789D Mike and distribution
题目连接 一道人类智慧题.... 这道题目可以转化为在a,b中的选出一些位置,使得这些位置处的值加起来大于没有选的位置的值 我们按照a的权值排序,选择第一个元素,其与元素两两分组,每组选择b更大的那一 ...
- More Effective C++: 05技术(30-31)
30:Proxy classes 代理类 在C++中使用变量作为数组大小是违法的,也不允许在堆上分配多维数组: int data[dim1][dim2]; int *data = new int[di ...
- DCOJ5117 set
题目描述 给定一个数集 A,要求构造一个数集 B,满足: • 对于 A 集合中任意的数 x,x 属于 B,即 A ⊆ B: • 对于 B 集合中任意的数 a, b,(a + b) mod p 属于 B ...
- chrome://inspect调试html页面空白,DOM无法加载的解决方案
chrome://inspect调试html页面空白,DOM无法加载的解决方案 先描述一下问题 有一段时间没碰huilder hybird app 开发了,今天调试的时候 chrome://inspe ...
- Codeforces 432C
题目链接 题意: 给出一个长度为n(n<=10^5)的数组a, 数组a是数字1到n的一种排列(打乱顺序). 每次可以选择两个数(不同)进行交换, 但是交换的条件是被选择的两个数的下标之差加1应 ...
- 最短路-Dijkstra算法整理
维基说的很全面:https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm 理解: 先设置访问数组vis[]和距离数组dist[],开始时把源点(sour ...
- Java练习 SDUT-2401最大矩形面积
最大矩形面积 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 在一个矩形区域内有很多点,每个点的坐标都是整数.求一个矩形 ...
- 应用node-webkit(NWJS)把BS架构的网址封装成桌面应用
一.目的 给WEB应用的用户提供一款同一的浏览器,访问固定网址,封装一些常用插件(如flash插件等) 二.步骤 1.下载node-webkit,官方网址https://nwjs.io/ 2.解压下载 ...
- jquery的操作
jQuery jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行 ...
- Knative 初体验:Eventing Hello World
作者 | 阿里云智能事业群高级开发工程师 元毅 基于事件驱动是Serveless的核心功能之一,通过事件驱动服务,满足了用户按需付费(Pay-as-you-go)的需求.在之前的文章中我们介绍过 Kn ...