Ответ 1
res.type('json')
работает тоже сейчас, и, как говорили другие, вы можете просто использовать
res.json({your: 'object'})
У меня есть следующее:
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
res.type('json')
работает тоже сейчас, и, как говорили другие, вы можете просто использовать
res.json({your: 'object'})
Попробуйте этот код:
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)
UPDATE: Я просто быстро проверил использование Firefox 3.6.x и Live HTTP Headers. Это вывод аддонов:
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: text/cache-manifest
Connection: keep-alive
Transfer-Encoding: chunked
Перед попыткой убедитесь, что вы очистили кеш.
вместо res.send()
используйте res.json()
, который автоматически устанавливает тип содержимого application/json