complete download image (#15)

This commit is contained in:
XiaoLi
2021-09-06 19:33:30 +08:00
committed by GitHub
parent c7a35c4744
commit 49e4710203
3 changed files with 59 additions and 45 deletions
+25 -34
View File
@@ -219,7 +219,7 @@ location /image_append {
<h2 id="3">3.图片下载</h2>
- music-room配置
- music-room配置-
```nginx configuration
# 子域名配置文件路径
@@ -227,47 +227,38 @@ location /image_append {
# server contex 中添加location
#Donwload image use ngx.req.set_uri
#Static file server
location /file_upload {
default_type "";
alias /file_upload/;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
#Download image files
location /download_image {
rewrite_by_lua_block{
ngx.log(ngx.INFO , "location /download_image")
-- Get download image id
local download_image_id = string.match(ngx.var.request_uri, ".*/(.*)$")
ngx.log(ngx.INFO , "Download image id: " .. download_image_id)
-- TODO: jwt decoder
--
-- Set redirect uri
--local uri = "/internal_file_upload/" .. download_image_id .. ".jpg"
--return ngx.exec(uri)
-- Functions : String split
string.split = function(s, p)
local rt= {}
string.gsub(s, '[^'..p..']+', function(w) table.insert(rt, w) end )
return rt
end
-- Get url and split by '/' save into a table
local sub_url_table = string.split(ngx.var.uri, '/')
local sub_url_number = table.getn(sub_url_table)
for i = 1, sub_url_number do
ngx.log(ngx.INFO , "Sub url sub" .. i .. " : " .. sub_url_table[i])
end
local uri = "/internal_file_upload/"..sub_url_table[sub_url_number]..".jpg"
ngx.log(ngx.INFO , "uri : " .. uri)
return ngx.req.set_uri(uri , true)
local uri = "/file_upload/" .. download_image_id .. ".jpg"
return ngx.exec(uri, {a = download_image_id})
}
}
#Static file server
location /internal_file_upload {
internal;
try_files $uri /file_upload/8493acab-0f7a-47e0-8fff-e96b843334dd.jpg;
}
```
- 添加lua脚本
- wget测试
```bash
/usr/local/openresty/resty_funcs
.
└── download_image.lua
wget http://localhost:8080/download_image/{download_image_uuid}
```
+7 -7
View File
@@ -1,7 +1,7 @@
-- Get download image id
local download_image_id = string.match(ngx.var.request_uri, ".*/(.*)$")
ngx.log(ngx.INFO , "Download image id: " .. download_image_id)
-- Set redirect uri
local uri = "/internal_file_upload/" .. download_image_id .. ".jpg"
return ngx.exec(uri)
---- Get download image id
--local download_image_id = string.match(ngx.var.request_uri, ".*/(.*)$")
--ngx.log(ngx.INFO , "Download image id: " .. download_image_id)
--
---- Set redirect uri
--local uri = "/internal_file_upload/" .. download_image_id .. ".jpg"
--return ngx.exec(uri)
+23
View File
@@ -33,6 +33,29 @@ server {
location /api/ngx/image/combine {
content_by_lua_file /usr/local/openresty/resty_funcs/combine.lua;
}
#Static file server
location /file_upload {
default_type "";
alias /file_upload/;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
#Download image files
location /download_image {
rewrite_by_lua_block{
-- Get download image id
local download_image_id = string.match(ngx.var.request_uri, ".*/(.*)$")
ngx.log(ngx.INFO , "Download image id: " .. download_image_id)
-- Set redirect uri
--local uri = "/internal_file_upload/" .. download_image_id .. ".jpg"
--return ngx.exec(uri)
local uri = "/file_upload/" .. download_image_id .. ".jpg"
return ngx.exec(uri, {a = download_image_id})
}
}
location /api/v1/ws/ {
proxy_pass http://127.0.0.1:3001/api/v1/ws/;