2013-09-05 13 views
106

में app.configure का उपयोग करके मुझे कुछ कोड मिला जहां उन्होंने 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'))); 

धन्यवाद।

+17

AFAIK कुछ भी नहीं। 'app.configure' का उपयोग पुराने एक्सप्रेस संस्करणों में किया जाना था लेकिन अब नहीं। –

+0

धन्यवाद, अकेले इस प्रश्न ने मुझे अपनी समस्या का समाधान करने में मदद की। वह कितना अच्छा है? :) –

+0

'एक्सप्रेस' के अंदर 'एक्सप्रेस' के अंदर 'उद्धरण 'होना चाहिए। –

उत्तर

116

यह वैकल्पिक है और दायरे के कारण विरासत कारण के लिए रहता है। आपके उदाहरण में, कोड के दो टुकड़े में कोई अंतर नहीं है। http://expressjs.com/api.html#app.configure

अद्यतन 2015:

बताते @IlanFrumer कि app.configure एक्सप्रेस 4.x. में निकाल दिया जाता है यदि आपने कुछ पुराने ट्यूटोरियल्स का पालन किया और सोच रहा था कि यह क्यों काम नहीं करता है, तो आपको app.configure(function(){ ... } को हटा देना चाहिए। इस तरह:

var express = require('express'); 
var app = express(); 

app.use(...); 
app.use(...); 

app.get('/', function (req, res) { 
    ... 
}); 
+55

ध्यान रखें कि 'app.configure' पूरी तरह से संस्करण 4.0 से हटा दिया गया है! https://github.com/visionmedia/express/issues/936 –

+2

जब भी आप एक्सप्रेस के संस्करण का उपयोग करते हैं जिसका उपयोग आपने पहले नहीं किया है, तो नए संस्करण https: // github पर माइग्रेट करने पर दस्तावेज़ की जांच करना अच्छा विचार है .com/visionmedia/व्यक्त/wiki/माइग्रेट-से-3.x करने वाली 4.x –