ngx.var.arg与ngx.req.get_uri_args的区别,
ngx.var.arg与ngx.req.get_uri_args的区别,
ngx.var.arg_xx与ngx.req.get_uri_args["xx"]两者都是为了获取请求uri中的参数,例如
http://pureage.info?strider=1
为了获取输入参数strider,以下两种方法都可以:
local strider = ngx.var.arg_strider
local strider = ngx.req.get_uri_args["strider"]
差别在于,当请求uri中有多个同名参数时,ngx.var.arg_xx的做法是取第一个出现的值,ngx.req_get_uri_args["xx"]的做法是返回一个table,该table里存放了该参数的所有值。
例如uri请求如下:
http://127.0.0.1?filename=1&filename=2&filename=3
local filename = ngx.var.filename
local filename = ngx.req.get_uri_args["filename"]
当请求uri中有多个同名参数时,ngx.var.arg是取第一个出现的值 “1“
ngx.req.get_uri_args[“xx”]是返回一个table,该table里存放了该参数的所有值。返回的table列表为[“1”, “2”, “3”]
ngx.req.get_uri_args[“x”]是ngx.var.arg_x的升级版
评论暂时关闭