คำถามติดแท็ก express

Express เป็นเฟรมเวิร์กเว็บแอ็พพลิเคชัน Node.js ที่ยืดหยุ่นซึ่งจัดเตรียมชุดคุณลักษณะที่มีประสิทธิภาพสำหรับการสร้างเว็บแอ็พพลิเคชัน

18
node.js ข้อผิดพลาด: ไม่พบโมดูล 'express'
ฉันยังใหม่กับ Node.js ลองเรียนรู้ Express เพื่อสร้างเว็บแอปพลิเคชันแรกของฉัน ฉันติดอยู่กับโค้ดตัวอย่างแรกของฉันและต้องการความช่วยเหลือเพื่อให้มันทำงานได้ ก่อนที่ฉันจะโพสต์คำถามนี้ฉันค้นหาใน stack overflow พบคำถามที่คล้ายกัน แต่ก็ยังไม่สามารถแก้ไขได้ ข้อผิดพลาด: ไม่พบโมดูล "express" ผมใช้Mac OS 10.8.2 ฉันติดตั้ง Node.js โดยใช้nvmไฟล์. node.js: 0.8.20 พา ธ ไปยังโหนด: /Users/feelexit/nvm/v0.8.20/bin/node พา ธ เพื่อแสดง: / Users / feelexit / nvm / node_modules / express นี่คือรหัสตัวอย่างของฉัน: ไฟล์นี้อยู่ที่: /Users/feelexit/WebstormProjects/learnnode/node_modules/index.js var express = require('express'); var app = express(); …
125 node.js  express 

10
จะจัดระเบียบแอปโหนดที่ใช้ sequelize ได้อย่างไร?
ฉันกำลังมองหาแอป nodejs ตัวอย่างที่ใช้ ORM ต่อเนื่อง ข้อกังวลหลักของฉันคือดูเหมือนว่าจะเป็นไปไม่ได้ที่จะกำหนดโมเดลของคุณในไฟล์ js แยกกันหากโมเดลเหล่านั้นมีความสัมพันธ์ที่ซับซ้อนซึ่งกันและกันเนื่องจากต้องใช้ลูปการพึ่งพา () อาจมีคนกำหนดโมเดลทั้งหมดในไฟล์เดียวที่ยาวมาก? ฉันสนใจเป็นหลักว่าโมเดลถูกกำหนดและใช้งานผ่านแอพอย่างไร ฉันต้องการให้มีการตรวจสอบความถูกต้องว่าสิ่งที่ฉันทำด้วยตัวเองเป็นวิธีที่ "ดี" ในการทำสิ่งต่างๆ

4
พาสปอร์ตเซสชัน () มิดเดิลแวร์ทำอะไร
ฉันกำลังสร้างระบบการตรวจสอบการใช้ Passport.js ใช้โหนดรับรองความถูกต้องง่ายต่อการติดตั้งและการกวดวิชาท้องถิ่น ฉันสับสนเกี่ยวกับสิ่งที่passport.session()ทำ หลังจากที่เล่นรอบกับตัวกลางที่แตกต่างกันฉันมาที่จะเข้าใจว่าexpress.session()คือสิ่งที่จะส่งรหัสเซสชันคุกกี้ให้กับลูกค้า แต่ฉันสับสนเกี่ยวกับสิ่งที่ทำและทำไมมันเป็นสิ่งจำเป็นที่นอกเหนือไปจากpassport.session()express.session() นี่คือวิธีตั้งค่าแอปพลิเคชันของฉัน: // Server.js กำหนดค่าแอปพลิเคชันและตั้งค่าเว็บเซิร์ฟเวอร์ //importing our modules var express = require('express'); var app = express(); var port = process.env.PORT || 8080; var mongoose = require('mongoose'); var passport = require('passport'); var flash = require('connect-flash'); var configDB = require('./config/database.js'); //Configuration of Databse and App mongoose.connect(configDB.url); //connect …

8
Express next function มีไว้ทำอะไร?
พยายามหาคำอธิบายที่ดีว่าnext()วิธีนี้ทำอย่างไร ในเอกสาร Express ระบุว่าnext('route')สามารถใช้เพื่อข้ามไปยังเส้นทางนั้นและข้ามทุกเส้นทางระหว่างกันได้ แต่บางครั้งก็nextถูกเรียกโดยไม่มีข้อโต้แย้ง ใครรู้วิธีการสอนที่ดีและอื่น ๆ ที่อธิบายถึงnextฟังก์ชั่น?
124 node.js  express 

17
วิธีการนำการเชื่อมต่อกับ Mongodb กลับมาใช้ใหม่อย่างถูกต้องผ่านแอปพลิเคชันและโมดูล NodeJs
ฉันอ่านและอ่านและยังสับสนว่าวิธีใดดีที่สุดในการแชร์การเชื่อมต่อฐานข้อมูลเดียวกัน (MongoDb) ในแอป NodeJs ทั้งหมด ตามที่ฉันเข้าใจควรเปิดการเชื่อมต่อเมื่อแอปเริ่มต้นและใช้ซ้ำระหว่างโมดูล แนวคิดปัจจุบันของฉันเกี่ยวกับวิธีที่ดีที่สุดคือserver.js(ไฟล์หลักที่ทุกอย่างเริ่มต้น) เชื่อมต่อกับฐานข้อมูลและสร้างตัวแปรออบเจ็กต์ที่ส่งผ่านไปยังโมดูล เมื่อเชื่อมต่อแล้วตัวแปรนี้จะถูกใช้โดยรหัสโมดูลตามความจำเป็นและการเชื่อมต่อนี้ยังคงเปิดอยู่ เช่น: var MongoClient = require('mongodb').MongoClient; var mongo = {}; // this is passed to modules and code MongoClient.connect("mongodb://localhost:27017/marankings", function(err, db) { if (!err) { console.log("We are connected"); // these tables will be passed to modules as part of mongo object mongo.dbUsers …

7
การตรวจสอบความถูกต้องของ Socket.IO
ฉันกำลังพยายามใช้ Socket.IO ใน Node.js และกำลังพยายามอนุญาตให้เซิร์ฟเวอร์ระบุตัวตนให้กับไคลเอ็นต์ Socket.IO แต่ละตัว เนื่องจากรหัสซ็อกเก็ตอยู่นอกขอบเขตของรหัสเซิร์ฟเวอร์ http จึงไม่สามารถเข้าถึงข้อมูลคำขอที่ส่งได้โดยง่ายดังนั้นฉันจึงคิดว่าจะต้องส่งขึ้นในระหว่างการเชื่อมต่อ วิธีที่ดีที่สุดคืออะไร 1) รับข้อมูลไปยังเซิร์ฟเวอร์เกี่ยวกับผู้ที่เชื่อมต่อผ่าน Socket.IO 2) รับรองความถูกต้องว่าพวกเขาเป็นใคร (ฉันกำลังใช้ Express อยู่ถ้าสิ่งนั้นง่ายขึ้น)

8
SyntaxError: ฟังก์ชันโทเค็นที่ไม่คาดคิด - Async Await Nodejs
ฉันกำลังทดลองใช้ Node เวอร์ชัน6.2.1กับโค้ดบางส่วนของฉัน มีแผนที่จะย้ายรหัสที่เน้นการโทรกลับแบบไฮเปอร์ส่วนใหญ่ไปยังสิ่งที่ดูสะอาดกว่าและอาจทำงานได้ดีกว่า ฉันไม่รู้ว่าทำไมเทอร์มินัลแสดงข้อผิดพลาดเมื่อฉันพยายามรันโค้ดโหนด helloz.js (async function testingAsyncAwait() { await console.log("Print me!"); })(); Logs- BOZZMOB-M-T0HZ:rest bozzmob$ node helloz.js /Users/bozzmob/Documents/work/nextgennms/rest/helloz.js:1 (function (exports, require, module, __filename, __dirname) { (async function testingAsyncAwait() { ^^^^^^^^ SyntaxError: Unexpected token function at Object.exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:513:28) at Object.Module._extensions..js (module.js:550:10) at Module.load (module.js:458:32) at tryModuleLoad …

13
อะไรคือวิธีที่เหมาะสมในการตรวจสอบการมีอยู่ของตัวแปรในเทมเพลต EJS (โดยใช้ ExpressJS)
ในหน้า EJS github มีตัวอย่างง่ายๆเพียงตัวอย่างเดียว: https://github.com/visionmedia/ejs ตัวอย่าง <% if (user) { %> <h2><%= user.name %></h2> <% } %> ดูเหมือนว่ากำลังตรวจสอบการมีอยู่ของตัวแปรที่ชื่อผู้ใช้และหากมีอยู่ให้ทำบางอย่าง ดุใช่มั้ย? คำถามของฉันคือทำไม Node ถึงโยน ReferenceError ในโลกนี้ถ้าตัวแปรผู้ใช้ไม่มีอยู่ สิ่งนี้ทำให้ตัวอย่างข้างต้นไร้ประโยชน์ วิธีใดที่เหมาะสมในการตรวจสอบการมีอยู่ของตัวแปร ฉันคาดว่าจะใช้กลไก try / catch และคว้า ReferenceError นั้นหรือไม่ ReferenceError: user is not defined at IncomingMessage.anonymous (eval at <anonymous> (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:140:12)) at IncomingMessage.<anonymous> (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:142:15) at Object.render (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:177:13) …
122 node.js  express  ejs 

1
ใช้ app.configure แบบด่วน
ฉันพบโค้ดบางส่วนที่พวกเขาตั้งค่า Express โดยไม่ใช้app.configureและฉันสงสัยว่าการใช้app.configureโดยไม่มีตัวระบุสภาพแวดล้อมกับไม่ใช้มันแตกต่างกันอย่างไร กล่าวอีกนัยหนึ่งความแตกต่างระหว่างสิ่งนี้คืออะไร: var app = require(express); app.configure(function(){ app.set('port', process.env.PORT || config.port); app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */ app.use(express.bodyParser()); app.use(express.static(path.join(__dirname, 'site'))); } และนี่: var app = require(express); app.set('port', process.env.PORT || config.port); app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */ app.use(express.bodyParser()); app.use(express.static(path.join(__dirname, 'site'))); ขอบคุณ
121 node.js  express 


10
ทำให้ Axios ส่งคุกกี้ในคำขอโดยอัตโนมัติ
ฉันกำลังส่งคำขอจากไคลเอนต์ไปยังเซิร์ฟเวอร์ Express.js โดยใช้ Axios ฉันตั้งค่าคุกกี้บนไคลเอนต์และฉันต้องการอ่านคุกกี้นั้นจากคำขอของ Axios ทั้งหมดโดยไม่ต้องเพิ่มคุกกี้ด้วยตนเองเพื่อขอด้วยมือ นี่คือตัวอย่างคำขอไคลเอ็นต์ของฉัน: axios.get(`some api url`).then(response => ... ฉันพยายามเข้าถึงส่วนหัวหรือคุกกี้โดยใช้คุณสมบัติเหล่านี้ในเซิร์ฟเวอร์ Express.js ของฉัน: req.headers req.cookies ไม่มีคุกกี้ใด ๆ ฉันใช้มิดเดิลแวร์ตัวแยกวิเคราะห์คุกกี้: app.use(cookieParser()) ฉันจะทำให้ Axios ส่งคุกกี้ในคำขอโดยอัตโนมัติได้อย่างไร แก้ไข: ฉันตั้งค่าคุกกี้บนไคลเอนต์ดังนี้: import cookieClient from 'react-cookie' ... let cookie = cookieClient.load('cookie-name') if(cookie === undefined){ axios.get('path/to/my/cookie/api').then(response => { if(response.status == 200){ cookieClient.save('cookie-name', response.data, {path:'/'}) } }) …

13
จะอัปเดตระเบียนโดยใช้ sequelize สำหรับโหนดได้อย่างไร
ฉันกำลังสร้าง RESTful API ด้วย NodeJS, express, express-resource และ Sequelize ที่ใช้จัดการชุดข้อมูลที่เก็บไว้ในฐานข้อมูล MySQL ฉันกำลังพยายามหาวิธีอัปเดตระเบียนอย่างถูกต้องโดยใช้ Sequelize ฉันสร้างแบบจำลอง: module.exports = function (sequelize, DataTypes) { return sequelize.define('Locale', { id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true }, locale: { type: DataTypes.STRING, allowNull: false, unique: true, validate: { len: 2 } }, visible: { type: DataTypes.BOOLEAN, …

3
HtmlWebpackPlugin ฉีดไฟล์พา ธ สัมพัทธ์ซึ่งแตกเมื่อโหลดเส้นทางเว็บไซต์ที่ไม่ใช่รูท
ฉันใช้ webpack และ HtmlWebpackPlugin เพื่อฉีด js และ css ที่รวมไว้ในไฟล์เทมเพลต html new HtmlWebpackPlugin({ template: 'client/index.tpl.html', inject: 'body', filename: 'index.html' }), และสร้างไฟล์ html ต่อไปนี้ <!doctype html> <html lang="en"> <head> ... <link href="main-295c5189923694ec44ac.min.css" rel="stylesheet"> </head> <body> <div id="app"></div> <script src="main-295c5189923694ec44ac.min.js"></script> </body> </html> วิธีนี้ใช้งานได้ดีเมื่อไปที่รูทของแอปlocalhost:3000/แต่ล้มเหลวเมื่อฉันพยายามเยี่ยมชมแอปจาก URL อื่นเช่นlocalhost:3000/items/1เนื่องจากไฟล์ที่รวมไม่ได้ถูกแทรกด้วยพา ธ สัมบูรณ์ เมื่อโหลดไฟล์ html ไฟล์จะค้นหาไฟล์ js ภายใน/itemsไดเร็กทอรีที่ไม่มีอยู่จริงเนื่องจาก react-router …

4
คุกกี้ "เซ็นชื่อ" ในการเชื่อมต่อ / expressjs คืออะไร
ฉันกำลังพยายามหาคำตอบว่าแท้จริงแล้ว "คุกกี้ที่ลงชื่อ" คืออะไร บนเน็ตมีไม่มากและถ้าฉันลองสิ่งนี้: app.use(express.cookieParser('A secret')); แต่ถึงกระนั้น ... คุกกี้ยังคงเป็นปกติ 100% บนเบราว์เซอร์และฉันไม่รู้จริงๆว่า "เซ็นชื่อ" อยู่ที่นี่ (ฉันหวังว่าจะ "เห็น" ความแปลกประหลาดบางอย่างในไคลเอนต์เช่นข้อมูลที่เข้ารหัสโดยใช้ "ความลับ" เท่าเกลือ?) เอกสารระบุว่า ( https://github.com/expressjs/cookie-parser ): แยกส่วนหัวคุกกี้และเติมข้อมูลreq.cookies ด้วยออบเจ็กต์ที่คีย์ด้วยชื่อคุกกี้ คุณสามารถเลือกที่จะเปิดใช้งานการรองรับคุกกี้ที่มีลายเซ็นได้โดยการส่งsecretสตริงซึ่งกำหนดreq.secretให้มิดเดิลแวร์อื่นอาจใช้ มีใครรู้บ้างไหม? Merc.

5
express.json กับ bodyParser.json
ฉันกำลังเขียนแอพที่ค่อนข้างใหม่และสงสัยว่าฉันควรใช้ตัวไหน: express.json() หรือ bodyParser.json() ฉันสามารถสมมติว่าพวกเขาทำสิ่งเดียวกัน ฉันต้องการใช้express.json()ตามที่มีอยู่แล้ว
115 json  express 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.