nodejs https.request - 如何发送UTF-8字符/集编码?

时间:2014-08-17 07:41:29

标签: json node.js encoding utf-8

使用nodejs https.request,我们正在发送包含内容的POST请求 request.write(JSON.stringify(data))

请求正文中的一个字符是'£'。如果存在,服务器将响应 unexpected token at '... ��...'

将utf-8添加到内容类型没有任何区别: 'Content-Type': 'application/json; charset=utf-8',

如何解决这个问题?或者,如果它不是UTF-8,如何为https.request内容设置编码?

相关问题:Module request how to properly retrieve accented characters? � � �

1 个答案:

答案 0 :(得分:-1)

也许这可行:

// Setup the request.  The options parameter is
// the object we defined above.
var req = http.request(options, function(res) {

  // Set the correct encoding of the data
  res.setEncoding('utf-8');

  var responseString = '';

  res.on('data', function(data) {
    responseString += data;
  });

  res.on('end', function() {
    var resultObject = JSON.parse(responseString);
  });
});

source