我可以直接向快递应用发送请求,而不是通过http吗?

时间:2011-12-14 00:08:06

标签: javascript node.js coffeescript express

我有一个创建快速服务器的文件。我们称之为foo_serever.coffee

# foo_server.coffee
module.exports = express.createServer()

现在我想要求并直接在javascript中发送请求。 (注意,sendRequest不是一个真正的方法,我只想要一个像这样的方法)

app = require './foo_server'
app.sendRequest 'get', '/some/url.html', (status, body, headers) ->
  console.log 'yay' if status is 200

有办法做到这一点吗?或者我是否需要将其作为另一个进程生成并通过http发送请求,这看起来更像是一种痛苦。

3 个答案:

答案 0 :(得分:1)

简答:No。Express仅作为真正的HTTP服务器,而不是模拟的服务器。使用request之类的库进行测试。您不必生成单独的进程来发送HTTP请求。

答案 1 :(得分:1)

正如Trevor说你可以使用Mikeal的request库进行测试,或者如果你想使用jQuery进行'表达式服务器端功能测试',可以使用Learnboost Tobi

答案 2 :(得分:0)

我知道这不像通过快速框架工作那样优雅,但我知道Nodejs http模块允许向任何网站发出http请求,并允许您提供标头和主机等。

有关详细信息和示例,请参阅节点http文档。

http://nodejs.org/docs/v0.6.5/api/http.html#http.get