在Lua中,可以使用httpc:request_uri函数来发送HTTP请求,并设置请求参数。该函数的语法如下:\n\nlua\nhttpc:request_uri(url, options)\n\n\n其中,url是要发送请求的URL地址,options是一个Lua table,用于设置请求参数。\n\n以下是一些常见的请求参数设置:\n\n1. method:设置请求方法,如GET、POST等,默认为GET。\nlua\noptions = {\n method = "POST"\n}\n\n\n2. headers:设置请求头信息,以Lua table的形式提供。\nlua\noptions = {\n headers = {\n ["Content-Type"] = "application/json",\n ["Authorization"] = "Bearer token"\n }\n}\n\n\n3. body:设置请求体,可以是字符串或者Lua table。\nlua\noptions = {\n body = "param1=value1&param2=value2"\n}\n\n\n4. query:设置查询参数,以Lua table的形式提供。\nlua\noptions = {\n query = {\n param1 = "value1",\n param2 = "value2"\n }\n}\n\n\n5. ssl_verify = false:设置是否验证SSL证书,默认为true。如果要忽略SSL证书验证,可以设置为false。\n\n使用示例:\nlua\nlocal httpc = require("resty.http").new()\n\nlocal options = {\n method = "POST",\n headers = {\n ["Content-Type"] = "application/json",\n ["Authorization"] = "Bearer token"\n },\n body = "param1=value1&param2=value2",\n query = {\n param3 = "value3",\n param4 = "value4"\n },\n ssl_verify = false\n}\n\nlocal res, err = httpc:request_uri("http://example.com/api", options)\nif not res then\n ngx.log(ngx.ERR, "failed to send request: ", err)\n return\nend\n\ngx.say(res.body)\n\n\n以上示例中,设置了请求方法为POST,请求头包含Content-Type和Authorization字段,请求体为param1=value1&param2=value2,查询参数为param3=value3&param4=value4,同时忽略了SSL证书验证。


原文地址: http://www.cveoy.top/t/topic/p8LY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录