嵌套的对象数组

这是我的mongodb模式。 var Schema = mongoose.Schema; var UserSchema = new Schema({ created: { type: Date, Default: Date.now() }, name: { type: String, default: "", // required: "Title Cannot Be Blank", trim: true }, email: { type: String, default: "", // required: "Content is required", trim: true }, rooms: [ { roomId: "string", roomName: "String", pic: "string", […]

格式化date时间对象作为SQL的string

我试图unit testing一个新的api端点,我已经build立了查询一个SQLite实例,并返回结果。 我从JSON播种SQLite实例,这是我试图拿起的logging: { "model": "JobResponse", "data": { "id": 4, "JobId": "1", "createdAt": "2017-08-13 00:01" } }, 我通常使用sequelize,并将使用timejs对象作为timeparam,但我需要的查询是不可能在sequelize,所以我使用原始查询。 我的JS正在生成以下查询: SELECT JobId, WHERE JobId = 2 AND createdAt > 2017-08-13 AND createdAt < 2017-08-14; 我确信这是datetime元素格式化的问题,但JSON种子和SQL查询都必须是stringforms,我已经尝试了moment().format() ,但后来我得到错误,例如: SQLITE_ERROR:接近“00” 这大概是因为时刻格式里面有空格。 我应该如何格式化这些date时间参数作为string? 更新 根据评论中的讨论,我现在已经midify我的查询包含引号,例如SELECT JobId, FROM JobResponses WHERE createdAt > '2017-08-10 00:00:01' AND createdAt < '2017-08-10 23:59:00' GROUP BY […]

在快递应用程序中存储自定义Handlebars助手的位置?

作为我学习Node.js的一部分,我正在使用Express + Handlebars做一个应用程序。 我来到了需要为Handelbars视图引擎注册自己的帮手的地步。 我用registerHelper()方法定义了自己的帮助器,但是我不知道应该在我的项目结构中放置这个定义,以使我的视图(最好是全局的)可以访问帮助器。 你如何去做呢? 我的项目结构非常基本,我认为: –bin –middleware –models –node_modules –public –views –routes app.js 在app.js中,我需要handlebars模块,并使用它设置布局引擎。

ctx.render不会redirect页面

我很确定这是因为ctx.render函数只是为了渲染页面,但我不知道该怎么做才能做我想做的事情。 基本上,我试图redirect用户到用户的mypagelogin后,在标题中的jwt令牌,所以我用axios发送请求到服务器,服务器路由器function呈现dynamicpug文件与给定的数据。 我想把jwt数据放到帕格文件中,但是当我发送请求的时候,页面只是刷新自己,实际上并没有redirect到mypage。 这是代码 客户 try { let res = await axios(loginOpt) await store.set('jwtToken', res.data.token) let mpOpt = {headers: {"Authorization": 'Bearer ' + store.get('jwtToken')}} axios.get(`/u/${payload.email}`, mpOpt) } catch (e) { console.error("failed to send login request", e) } 路由器 router.get('/:userName', async (ctx, next) => { console.log("jwt TOKEN IS", ctx.header.authorization) let renderData = { userName: userName, profilePic: […]

在Azure上启动Nightmare.js

我使用我的本地服务器上的恶梦,它的工作原理。 我试图在MS Azure上启动这个项目。 我在日志中看不到任何错误和警告。 但是在第一次使用“梦魇”期间,代码运行会停止。 我发现Azure不支持Electron。 Nightmare.js不适用于Azure webjob 有没有可能在Azure上运行我的代码? 如果没有,请告诉我梦魇工作的地方。 UPDATE 我在Windows上使用Azure Web Apps。 我遵循@evilSnobu的build议,并在Linux上的Azure Web Apps上重新启动我的服务器。 但是它不工作。 这样我在日志中看到,它工作,而不符合Nidthmare。 之后,我在日志(balnk14 – 它的我的项目)中看到这行: 2017-08-14 09:57:45.434 ERROR – Container logs STDERR>> 2017-08-14T09:53:58.254134911Z npm info it worked if it ends with ok 2017-08-14T09:53:58.254164596Z npm info using npm@3.10.10 2017-08-14T09:53:58.254167894Z npm info using node@v6.9.3 2017-08-14T09:54:00.107284364Z npm info lifecycle blank5@1.0.0~prestart: blank5@1.0.0 […]

passportjs – 来自节点的发布请求不authentication用户

我有以下的ajax后,这是完美的passportjs工作。 $(document).ready(function(){ $('#btn-login').click(function() { var email = $('#loginEmail').val(); var password = $('#loginPassword').val(); var emailValidation = new RegExp(/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([az]{2,6}(?:\.[az]{2})?)$/i); if(!email | !password) { $('#loginLabel').text('Email and password are required.'); } else if(!emailValidation.test(email)) { $('#loginLabel').text('Email format is invalid.'); } else { var userData = { username: email, password: password }; var request = $.ajax({ type: 'POST', url: '/login', data: […]

Npm安装总是返回`代码ECONNREFUSED`错误的所有pakcages

`npm ERR! code ECONNREFUSED npm ERR! errno ECONNREFUSED npm ERR! FetchError: request to http://registry.npmjs.org/body-parser failed, reason: connect ECONNREFUSED 127.0.0.1:3000` 我尝试了proxy settings , registry set commands ..但仍然没有用.. 我使用节点js最新版本..我的应用程序监听端口是3000 我试过npm config List ..有没有错误的configuration? `; cli configs metrics-registry = "https://registry.npmjs.org/" scope = "" user-agent = "npm/5.3.0 node/v8.1.4 win32 ia32" ; userconfig C:\Users\JANEN\.npmrc https-proxy = "http://proxy.company.com:8080/" proxy = "http://proxy.company.com:8080/" […]

节点Express会话和离子angular度之间的会话丢失

我在节点上使用快速会话来存储用户的数据。 我允许访问控制允许来源和访问控制允许证书。 所以在我的请求中,我设置了Credentials等于true: return this.http.post('https://localhost:2800/login', profile, {withCredentials: true}) 问题是,如果应用程序向其他站点发出任何请求,或者在S3上请求映像,则与服务器的会话将丢失。 (我必须再次login)。 这只发生在我的networking浏览器(运行离子服务),一旦我加载我的应用程序在物理智能手机运作良好。

npm与巴贝尔和webpack创build反应应用程序不起作用

我是新兴的UI技术。 我正在尝试我的手在reactjs随着webpack和babel我创build了一个应用程序后使用npm安装它使用create-react-app插件。 我进入src文件夹并执行npm start,启动浏览器并显示演示页面。 我试图添加babel和webpack到这个演示,但不幸的是它不工作。 我打开浏览器中的index.html页面,它不显示我所遵循的jsx文件内容https://www.codementor.io/tamizhvendan/beginner-guide-setup-reactjs-environment-npm-babel-6-的WebPack-du107r9zr 我不知道为什么这不起作用,可以请一些帮助吗? index.jsx import React from 'react'; import {render} from 'react-dom'; class App extends React.Component { render () { return <p> Hello React!</p>; } } render(<App/>, document.getElementById('app')); 的index.html <html> <head> <meta charset="utf-8"> <title>React.js using NPM, Babel6 and Webpack</title> </head> <body> <div id="app" /> <script src="public/bundle.js" type="text/javascript"></script> </body> </html> .babelrc文件 { […]

只在socket.io上“轮询”

我有两个应用程序在openshift v2托pipe,都有相同的代码 ,第一次使用Node.js 0.10和socket.io完美的作品。 第二个应用程序使用Node.js 8.2.1,但socket.io不起作用,我得到了与在这些其他网站相同的错误: 客户端在socket.io上接收轮询 Socket.io无法连接,请求“投票” Socket.io连接恢复到轮询,从不触发'连接'处理程序 我试图做出答案,但没有结果,如果代码在我的两个应用程序是相同的。什么可以失败? 有必要对新版本的Node.js进行一些更改? 这是我的应用程序中的相关代码和有关它的信息: 这两个应用程序在8080或3000端口上运行完美。 服务器 App.js var fs = require('fs'); var express = require('express'); var app = express(); var server = require('http').Server(app); var bodyParser = require ('body-parser'); var jwt = require('jsonwebtoken'); var io = require('socket.io')(server); var server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'; var server_port = process.env.OPENSHIFT_NODEJS_PORT || […]