如何在Express上捕捉M-SEARCH请求?

这是我抓到M-SEARCH请求的程序。

router['m-search']('/', function(req, res, next) { res.send('Got a M-SEARCH request\n'); }); 

这个代码可以响应这样的请求。

 M-SEARCH / HTTP/1.1 

但是,不能为这样的要求

 M-SEARCH * HTTP/1.1 

所以,我修改了这个,但是在这种情况下我找不到任何改变。

 router['m-search']('*', function(req, res, next) { res.send('Got a M-SEARCH request\n'); }); 

如何在Express上捕捉真正的M-SEARCH请求?

Express不能提供自定义的HTTP动词,因为它下面的nodejs在httpparsing器模块中有一个硬编码的词。 https://github.com/joyent/node/blob/v0.10.29/deps/http_parser/http_parser.h#L87-119

你也可以检查这个答案: 使用ExpressJS服务非标准的HTTP方法