openrestycjson转义斜杠/为\/
print(cjson.encode({url="http://www.baidu.com"}));{"url":"http://www.biau.com"}
分析发现cjson实现时对/进行转义,json规范里约定/可以转义也可以不转义。解决办法修改cjson源码,目录在openresty-x.x.x.x/bundle/lua-cjson-y.y.y.y/
修改文件:lua_cjson.c 搜索char2escape
NULL, NULL, NULL, NULL, NULL, NULL, NULL, "\/",最后一个字符替换为:
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
重新编译openresty解决。
以上是 openrestycjson转义斜杠/为\/ 的全部内容, 来源链接: utcz.com/z/514379.html