【问题标题】:Receiving headers sent from SERVER to CLIENT in NODE.JS在 NODE.JS 中接收从 SERVER 发送到 CLIENT 的标头
【发布时间】:2014-04-24 11:38:29
【问题描述】:

我真的需要你的帮助。当服务器端通过 res.writeHead 和 res.end 发送 header 时,如何在 CLIENT SIDE 中获取数据并将其填充到 html 中?

详情:我正在使用 Node 和 Backbone.js。 代码:

服务器端代码

res.writeHead(200, {'Content-Type' : 'text/plain','Error':'err'});
res.end();

我在客户端写什么?还是在html页面本身?请赐教。

【问题讨论】:

  • 这取决于您的客户端代码。
  • 根据经验,编造 HTTP 标头是个坏主意。使用标准状态代码并将扩展的错误消息放在响应正文中。
  • 你想从哪里获取标题?获取集合时?更新模型?
  • 如果你使用 ajax XMLHttpRequest.getResponseHeader 否则 ???
  • 我想使用客户端发送的数据,例如将数据附加到一个div。

标签: javascript jquery ajax node.js backbone.js


【解决方案1】:

Backbone 的大多数触发 Ajax 请求 (like Collection.fetch) 的方法都将返回 jQuery XMLHttpRequest object(假设您使用的是 jQuery)。如果你真的需要看标题,你可以这样做:

collection.fetch().done(function(data, textStatus, jqXHR) {
    var header = jqXHR.getAllResponseHeaders();
    // do stuff with the headers
});

【讨论】:

  • 您好,非常感谢您的回复。但我真的很想把代码放在 html 页面本身。将使用服务器发送的响应的代码。你知道什么方法吗?
  • 你可以在浏览器中运行这段代码就好了。您可以使用XMLHttpRequest object has a getAllResponseHeaders() method 将标题作为换行符分隔的字符串检索。
猜你喜欢
  • 1970-01-01
  • 2012-05-22
  • 1970-01-01
  • 2023-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多