python - Why is Flask checking `'\\/' in json.dumps('/')` in its json module? -
the source flask.json module contains following line. '\\/' mean, , why flask checking this? _slash_escape = '\\/' not in _json.dumps('/') flask using test if json library it's using escapes slashes when doesn't have to. if library does, json.dump('/') produce '"\\/"' (equivalent raw string r'"\/"' , see here explanation on escape characters ). flask can choose 1 of multiple json libraries, , libraries/versions escape forward slashes while others don't. flask includes comment explaining this. if library escape slashes, flask undo when dumps json , consistency between libraries. # figure out if simplejson escapes slashes. behavior changed # 1 version without reason. _slash_escape = '\\/' not in _json.dumps('/') ... def htmlsafe_dumps(obj, **kwargs): ... if not _slash_escape: rv = rv.replace('\\/', '/') ... flask still escapes...