0

我想用 asp.net mvc 运行 node.js 来执行 socket.io 操作。

我已经成功地将 node.js 包含在 asp.net mvc 中,如此处所述

我的问题是如何在 asp.net mvc 中运行 express.js,

我已经在 Global.asax.cs 文件中执行了 url 重写,例如

void Application_BeginRequest(object sender, EventArgs e)
{
// 获取当前路径
字符串 CurrentPath = Request.Path.ToLower();
if (CurrentPath.StartsWith("/node"))
{ HttpContext MyContext = HttpContext.Current;
MyContext.RewritePath("/Node/index.js/");
}
}

所以在 url http:localhost:1234/node应该将我重定向到 Node 文件夹中的 index.js 文件

一切正常,但是,当我开始在 index.js 中编写 express.js 服务器时

var express = require('express');

var app = express.createServer();

app.get('/node/', function(req, res) {
res.send('欢迎表达');
});

app.listen(process.env.PORT);

我收到错误提示无法获取 /Node/index.js/

我在哪里失踪?请指导我如何在 asp.net mvc 中编写 express.js 编码

我正在使用 IIS 8.0 express 在 windows 7 32 位系统中运行此应用程序,并且安装的节点版本是
iisnode.js - iisnode-full-iis7-v0.2.3-x86
node.js - node-v0.8.19-x86

谢谢你。

4

1 回答 1

0

你有 iisnode 处理 index.js 的 web.config 条目吗?

默认情况下,iisnode 未设置为 .js 处理程序,因为客户端 javascript 比服务器端 javascript 多得多,因此您需要显式打开 iisnode 作为该文件的处理程序。

于 2013-03-13T03:37:33.227 回答