我正在使用readJSON
which,如果出现错误,将产生Left err
. 有时这个错误(一个字符串)包含引号,例如ReferenceError: "JSON" is not defined.
我需要用 JSON 字符串返回这个错误,有点像
Left err -> "{ \"error\" : \"The error is: " ++ (show err) ++ "\" }"
(这show
是必需的,因为我们处于失败单子中。)
但是当err
像上面的例子一样有引号时,这会将 JSON 撕开。如何让这个工作?
(在 PSCI 中,show
似乎在转义方面做得很好,例如show "\"foo\""
产生 . 的烟花\
。但在上面的函数中,不是吗?)