Javascript NodeJS highchart保存png

Javascript NodeJS highchart保存png,javascript,node.js,highcharts,png,Javascript,Node.js,Highcharts,Png,我正在尝试使用此代码将图像保存到test.png文件中 var request = require('request'); var headers = { 'Content-Type': 'application/json' }; var dataString = '{"infile":{"title": {"text": "Steep Chart"}, "xAxis": {"categories": ["Jan", "Feb", "Mar"]}, "series": [{"data

我正在尝试使用此代码将图像保存到test.png文件中

var request = require('request');

var headers = {
    'Content-Type': 'application/json'
};

var dataString = '{"infile":{"title": {"text": "Steep Chart"}, "xAxis": {"categories": ["Jan", "Feb", "Mar"]}, "series": [{"data": [29.9, 71.5, 106.4]}]},"outfile":"test.png"}';

var options = {
    url: 'http://127.0.0.1:7801',
    method: 'POST',
    headers: headers,
    body: dataString
};

function callback(error, response, body) {
    console.log(body);
}

request(options, callback);

请让我知道这个代码有什么问题。未生成outfile test.png。

您的图像应位于回调函数中的body对象中。我假设您的服务器工作正常

现在需要将其保存到文件系统中。可以这样做:

function callback(error, response, body) {
  require("fs").writeFile("out.png", body, 'base64', function(err) {
    console.log(err);
  });
  console.log(error);
}
我在dataString中添加了base64编码b64的标志。我在接收二进制文件时遇到了一些编码问题,所以我使用了base64,它工作得很好

var dataString = '{"infile":{"title": {"text": "Steep Chart"}, "xAxis": {"categories": ["Jan", "Feb", "Mar"]}, "series": [{"data": [29.9, 71.5, 106.4]}]},"outfile":"test.png", "b64": true}';

您可以在API中找到有关此标志的更多信息:

此代码向服务器发送一些数据。此服务器的功能未知。