overleaf/services/real-time/app/coffee/SafeJsonParse.js

13 lines
423 B
JavaScript
Raw Normal View History

2015-12-01 06:05:49 -05:00
Settings = require "settings-sharelatex"
logger = require "logger-sharelatex"
module.exports =
parse: (data, callback = (error, parsed) ->) ->
if data.length > Settings.maxUpdateSize
logger.error {head: data.slice(0,1024), length: data.length}, "data too large to parse"
2015-12-01 06:05:49 -05:00
return callback new Error("data too large to parse")
try
parsed = JSON.parse(data)
catch e
return callback e
callback null, parsed