2015-12-03 68 views
0

我正在使用IBM Bluemix爲學校項目製作Web服務。NodeJS assert.AssertionError:我該如何殺死它?

我設置了一個localhost來運行我的代碼,但是當我在Windows 10命令提示符中鍵入「npm start」時,我正面臨「assert.AssertionError」。

當我嘗試運行我的代碼時,我面臨assert.AssertionError。

什麼是造成這個錯誤,我該如何擺脫它?

這裏是我的js文件:

/*eslint-env node*/ 

//------------------------------------------------------------------------------ 
// node.js starter application for Bluemix 
//------------------------------------------------------------------------------ 

//"Ask" express 
var express = require(express); 

// HTTP request - duas alternativas 
var http = require('http'); 
var request = require('request'); 

// cfenv provides access to your Cloud Foundry environment 
// for more info, see: https://www.npmjs.com/package/cfenv 
var cfenv = require('cfenv'); 

// create a new express server 
var app = express(); 

// serve the files out of ./public as our main files 
app.use(express.static(__dirname + '/public')); 

// get the app environment from Cloud Foundry 
var appEnv = cfenv.getAppEnv(); 

//chama o express, que abre o servidor 
var express = require('express'); 

// start server on the specified port and binding host 
app.listen(appEnv.port, '0.0.0.0', function() { 
    // print a message when the server starts listening 
    console.log("server starting on " + appEnv.url); 
}); 


app.get('/home1', function(res){ 
    http.get('http://developers.agenciaideias.com.br/cotacoes/json', function(res){ 
     var body = ''; 
     res.on('data', function(chunk){ 
      body += chunk; 
     }); 
     res.on('end', function(){ 
      var json = JSON.parse(body); 
     }); 
     var json = JSON.parse(res); 
     var cotacao = json["bovespa"]["cotacao"]; 

     console.log("A sua cotação é "+cotacao); 

    }); 
}); 

Print of the Assert Error

以下是錯誤的屏幕,當我做「故宮啓動」我得到的打印。請注意,「C:xxxxx」路徑是包含我的.js文件的目錄。

+1

不應該'VAR快遞=需要(表達);'是'VAR快遞=要求( 「快報」);'? (雖然它已經在那裏,幾行後)這是錯誤似乎生活的線。 –

回答

1

你的nodejs應用程序沒有找到'express'模塊,所以你正面臨着這個問題。

更改線路

var express = require(express);

var express = require('express');

或者乾脆刪除了這一行,因爲這是一個重複的。 您已經所需的模塊

//chama o express, que abre o servidor
var express = require('express');