我用Electron编写了一个应用程序,允许用户发出API请求并将其保存到文件中。首先将请求对象保存到内存中。然后,在这些对象的列表上进行map
,提取所需的信息,然后使用fs
将它们保存到JSON
数组中。关注的代码在这里:
var actionResult = this.props.requests.map(function(request) {
return {
url: request.value.url,
verb: request.value.verb,
expectedResponse: request.value.responseCode,
headers: request.value.Headers,
body: JSON.parse(request.value.Body)
}
})
进一步,我使用fs.writeFile
将生成的actionResult
保存到文件中。我遇到的问题是body
字段。用户输入JSON Body
作为字符串。但是,将该字符串写到文件结果中会以非常难看的格式打印出来。使用JSON.parse
以更整齐的格式打印出身体。
但是,使用JSON.parse
会引发错误Uncaught Error: A cross-origin error was thrown. React doesn't have access to the actual error object in development
。错误会间歇性显示,并且不会以任何实际模式出现。有时,一切工作正常,我在新文件中得到了漂亮的打印JSON。其他时候,抛出此错误。如果我完全摆脱了JSON.parse
,该错误将永远不会出现。这里有任何帮助。另外,将漂亮的JSON打印到文件的任何帮助也将有所帮助。