web-dev-qa-db-ja.com

express-jsがContent-Typeヘッダーを設定しないのはなぜですか?

私は次のものを持っています:

var express = require('express'),
    app = express.createServer();

app.get("/offline.manifest", function(req, res){
  res.contentType("text/cache-manifest");
  res.end("CACHE MANIFEST");
});

app.listen(8561);

Chromeの[ネットワーク]タブには、text/plain。ヘッダーを設定しないのはなぜですか?

上記のコードは機能しますが、私の問題はexpress-jsの古いバージョンへのリンクが原因でした

23
Kit Sunde

res.type('json')も機能するようになり、他の人が言ったように、単純に使用できます
res.json({your: 'object'})

36
Ray Hulha

このコードを試してください:

var express = require('express'),
    app = express.createServer();

app.get("/offline.manifest", function(req, res){
  res.header("Content-Type", "text/cache-manifest");
  res.end("CACHE MANIFEST");
});

app.listen(8561);

(Expressの最新リリース2.0.0を使用していると仮定しています)

PDATE: Firefox 3.6.xとライブHTTPヘッダーを使用して簡単なテストを行いました。これはアドオンの出力です:

 HTTP/1.1 200 OK
 X-Powered-By: Express
 Content-Type: text/cache-manifest
 Connection: keep-alive
 Transfer-Encoding: chunked

試す前にキャッシュをクリアしてください。

20
schaermu