Note that there are some explanatory texts on larger screens.

plurals
  1. PONode.js Express with Azure Bad Request
    text
    copied!<p>I basically just started a website on Azure and I am already getting bad request errors for some unknown reason. The thing is this isn't my first website and I've encountered this before, but I just can't get it this time! Maybe I'm too tired or something, can somebody help me out? The following files are basically all the things I've changed. </p> <p><strong>server.js</strong></p> <pre><code>/** * Module dependencies. */ var express = require('express'); var routes = require('./routes'); var azure = require('azure'); var http = require('http'); var fs = require('fs'); var path = require('path'); var app = express(); var index = require('./routes/index'); app.configure(function(){ app.set('port', process.env.PORT || 3000); app.set('views', __dirname + '/views'); app.set('view engine', 'jade'); app.use(express.favicon()); app.use(express.logger('dev')); app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(app.router); app.use(express.static(path.join(__dirname, 'public'))); }); app.configure('development', function(){ app.use(express.errorHandler()); }); //Routing app.get('/', index.splash); app.get('/thumbnail', index.thumbnail); //Utility app.post('/file-upload', function(req, res) { // get the temporary location of the file var tmp_path = req.files.thumbnail.path; // set where the file should actually exists - in this case it is in the "images" directory var target_path = './public/images/' + req.files.thumbnail.name; // move the file from the temporary location to the intended location fs.rename(tmp_path, target_path, function(err) { if (err) throw err; // delete the temporary file, so that the explicitly set temporary upload dir does not get filled with unwanted files fs.unlink(tmp_path, function() { if (err) throw err; res.send('File uploaded to: ' + target_path + ' - ' + req.files.thumbnail.size + ' bytes'); }); }); }); //No Touch http.createServer(app).listen(app.get('port'), function(){ console.log("Express server listening on port " + app.get('port')); }); </code></pre> <p><strong>thumbnail.jade</strong></p> <pre><code>h1= title p Welcome to #{title} form(method='post', enctype='multipart/form-data', action='/file-upload') input(type='file', name='thumbnail') input(type='submit') </code></pre> <p><strong>index.js</strong></p> <pre><code>/* * GET home page. */ exports.index = function(req, res){ res.render('Splash', {title: 'Express'}); }; exports.thumbnail = function (req, res) { res.render('thumbnail', { title: 'Express' }); }; </code></pre> <p>I honestly have no idea what this could be I am using WebMatrix from Microsoft as my IDE and this is basically just their Express Node.js template.</p> <p>UPDATE: so I am getting this specific error:</p> <pre><code>Application has thrown an uncaught exception and is terminated: Error: .get() requires callback functions but got a [object Undefined] at Router.route.Route.sensitive (C:\Users\ShannonS\Documents\GitHub\CircuitsExpress\node_modules\express\lib\router\index.js:252:11) at Array.forEach (native) at Router.route (C:\Users\ShannonS\Documents\GitHub\CircuitsExpress\node_modules\express\lib\router\index.js:248:13) at Router.methods.forEach.Router.(anonymous function) [as get] (C:\Users\ShannonS\Documents\GitHub\CircuitsExpress\node_modules\express\lib\router\index.js:270:16) at Function.methods.forEach.app.(anonymous function) [as get] (C:\Users\ShannonS\Documents\GitHub\CircuitsExpress\node_modules\express\lib\application.js:412:26) at Object.&lt;anonymous&gt; (C:\Users\ShannonS\Documents\GitHub\CircuitsExpress\server.js:35:5) at Module._compile (module.js:449:26) at Object.Module._extensions..js (module.js:467:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload