2017-03-16 36 views
1

我有一個簡單的腳本expressjs像:expressja使用XHR使HTTP請求或獲取

var app = require('express')(); 
var http = require('http').Server(app); 

var requestAuth = function (req, res, next) { 
    var xhr = new XMLHttpRequest() 
    console.log("a", xhr) 
    next() 
} 
app.use(requestAuth) 

app.get('/', function(req, res){ 
    res.send('<h1>Hello again</h1>'); 
}); 

http.listen(3000, function(){ 
    console.log('listening on *:3000'); 
}); 

在這裏,我想進行簡單的Ajax調用併爲您在網址認證。

當我執行上面的腳本時,它給我錯誤像XMLHttpRequest沒有定義。這裏有什麼問題?

錯誤我得到了同樣的類型時,我嘗試使用promise

我怎樣才能讓http請求使用XHR或取?

是不是它nodejs應該接受所有正常的JavaScript接受的功能?

任何人都可以讓我更清楚嗎?我很新的expressjs

回答

1

你還沒有requrie模塊xmlhttprequest需要它那樣。 第一個運行命令

npm install xmlhttprequest --save 

然後需要( 「XMLHttpRequest的」)的XMLHttpRequest。

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest; 

即使從應用程序中刪除這部分代碼,它也可以正常工作。即

var requestAuth = function (req, res, next) { 
    var xhr = new XMLHttpRequest() 
    console.log("a", xhr) 
    next() 
} 
app.use(requestAuth)