文章引用:
前言:
参照 lua-resty-upload 模块结合Nginx实现对外提供一个url,利用post方式上传文件的lua脚本。测试方式可以利用postman直接调用对外url,以post方式上传文件。
在这里不对Nginx的配置做多余的说明,关于Nginx的配置上传模块可以参见百度。
lua-resty-upload 在 github 上的项目地址为:https://github.com/openresty/lua-resty-upload
一丶接收上传文件的lua脚本
--从环境变量LUA_PATH中搜索lua文件
package.path = './lualib/resty/?.lua;'
--从LUA_CPATH中搜索C文件
package.cpath = './lualib/?.so;'
--==========================================
-- 获取上传文件名称
--==========================================
function get_filename(res)
local filename = ngx.re.match(res,'(.+)filename="(.+)"(.*)')
if filename then
return filename[2]
end
end
--==========================================
-- 获取上传文件路径
--==========================================
function get_fileUploadPath()
local obj = io.popen("cd")
local path = obj:read("*all"):sub(1,-2)
--记录当前lua脚本所在的绝对路径
--local cjson = require("cjson.safe")