使用nginx capture的注意事项

post

res = ngx.location.capture('/update',{method = ngx.HTTP_POST,body = "name=" .. name .. "&content=" .. content})

解析json

local cjson = require("cjson")
local data = cjson.decode(res.body)

如果返回的不是json格式,则这段lua脚本会报错

Expected value but found invalid token at character 1
stack traceback:
coroutine 0:
    [C]: in function 'decode'

安全解析json

local cjson = require("cjson.safe")
local data = cjson.decode(res.body)
if data==nil then
 --....
end

doc

    原文作者:codecraft
    原文地址: https://segmentfault.com/a/1190000008298444
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞