0

我从 GitHub 中的当前 master 配置了 Java 的 highchart 导出服务器。当我尝试使用演示页面导出图像时,返回了损坏的文件。我已调试代码并发现以下消息作为 ServerObjectFactory.java 中 validate 方法的结果返回

字符串结果 = server.request("{\"status\":\"isok\"}");

结果字符串的值为“渲染失败:语法错误:无法解析 JSON 字符串”

这个问题的原因可能是什么。

谢谢你

4

1 回答 1

0

这很奇怪。JSON 字符串的语法在语法上是正确的。我可以指出错误是从哪里产生的。

在 highcharts-ecport-convert/src/main/resources/phantomjs 的 highcharts-convert.js 文件中,传入的请求应该是 JSON 字符串并被解析,见第 469 行

function (request, response) {

var jsonStr = request.post,
    params,
    msg;
try {
    params = JSON.parse(jsonStr); // L469
    if (params.status) {
        // for server health validation
    response.statusCode = 200;
    response.write('OK');
    response.close();
    } else { 
       ....

设置在一个console.log(jsonStr)之前JSON.parse(jsonStr)。我希望这能让你知道它为什么会抛出错误。

于 2013-07-15T10:44:50.640 回答