节点js发送json正文作为回应

时间:2012-11-05 06:09:51

标签: node.js

使用不同的信息重新发布此问题。

我有3个参数。

  response.writeHead(200, 
        {       
         'Content-Type': 'text/json'            
        });      
      response.end({ID:'bufid',Name: bufname,address: bufaddrss});

    }

这不起作用。 在这里,我想以200 Ok a JSON Body发送给最终用户:

{'ID; :'123',
  'Name': 'alice',
   'address': 'xxxxx'}

这里的bufid,bufname和bufaddrss是由函数决定的值,可以在任何地方访问(它们是全局的)

如何发送该信息

1 个答案:

答案 0 :(得分:2)

首先你必须意识到以下几点:

{ID:'bufid',Name: bufname,address: bufaddrss}

不是JSON。 JSON是一种协议。它是一个字符串,使用类似于javascript对象文字语法的语法对javascript对象进行编码(因此大多数人对术语“JSON”的混淆和混淆)。

首先需要将该对象转换为JSON格式的字符串。幸运的是,node附带了一个内置方法:JSON.stringify()

response.end(
    JSON.stringify({ID: bufid,Name: bufname,address: bufaddrss})
);