Windows Sensu 客户端 Powershell 安装脚本中的 JSON 解析错误 - 第 1 行第 1 列出现意外字符

Windows Sensu 客户端 Powershell 安装脚本中的 JSON 解析错误 - 第 1 行第 1 列出现意外字符

我正在为 Windows 上的 Sensu 创建安装脚本,并在启动服务时收到此错误:

{
  "timestamp": "2016-04-14T23:05:45.043371+0100",
  "level": "warn",
  "message": "config file must be valid json",
  "file": "C:/opt/sensu/conf.d/client.json",
  "error": "unexpected character at line 1, column 1 [parse.c:652]"
}

所有 JSON 配置文件都会出现此错误。

这是我的安装脚本,它成功安装了 msi 并按照我想要的方式写入文件: http://pastebin.com/GgQsNcAX

以下是其输出的配置文件示例:

{
    "client": {
        "name": "Server1",
        "address": "1.1.1.1",
        "subscriptions": [ "none" ]
    }
}

符号:

JSON CRLF 符号

我觉得还不错!?

答案1

建议:使用十六进制编辑器查看文件。您可能会在文件头发现一个恶意的 FE FF;这是 Unicode 的字节顺序标记,不会显示在支持 Unicode 的文本编辑器中。顺便说一句,记事本支持 Unicode。(在这种情况下,您还会发现,您的花括号不是 0x7B,而是 0x00 0x7B。)

相关内容