Browse Source

新增图片读取接口

hongze 6 months ago
parent
commit
521d9e3aec
2 changed files with 40 additions and 0 deletions
  1. 31 0
      controllers/resource.go
  2. 9 0
      routers/commentsRouter.go

+ 31 - 0
controllers/resource.go

@@ -15,8 +15,11 @@ import (
 	"os"
 	"path"
 	"regexp"
+	"strconv"
 	"strings"
 	"time"
+
+	rdHttp "github.com/rdlucklib/rdluck_tools/http"
 )
 
 // 资源管理-图片上传,合同上传等
@@ -1090,3 +1093,31 @@ func (this *ResourceAuthController) FileDownload() {
 	br.Success = true
 	this.Ctx.Output.Download(localFilePath, fileName)
 }
+
+// FileDownload
+// @Title 文件加载
+// @Description 文件加载
+// @Param   FileUrl  query  string  true  "文件路径"
+// @Success 200 Ret=200 操作成功
+// @router /file/reload [get]
+func (this *ResourceController) FileReload() {
+
+	fileUrl := `https://hzstatic.hzinsights.com/static/images/202202/20220208/Qr3dulOoVTJgyl8skH1jL1kv36RX.png`
+
+	body, err := rdHttp.Get(fileUrl)
+	if err != nil {
+		fmt.Println("err: ", err)
+		this.Ctx.WriteString("err: " + err.Error() + "")
+		return
+	}
+	// 设置响应头
+	this.Ctx.ResponseWriter.Header().Set("Content-Type", "image/png")
+	this.Ctx.ResponseWriter.Header().Set("Content-Length", strconv.Itoa(len(body)))
+
+	// 将文件内容写入响应体
+	_, err = this.Ctx.ResponseWriter.Write(body)
+	if err != nil {
+		http.Error(this.Ctx.ResponseWriter, "Failed to write response", http.StatusInternalServerError)
+		return
+	}
+}

+ 9 - 0
routers/commentsRouter.go

@@ -10330,6 +10330,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta_gn/eta_api/controllers:ResourceController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:ResourceController"],
+        beego.ControllerComments{
+            Method: "FileReload",
+            Router: `/file/reload`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta_gn/eta_api/controllers:ResourceController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:ResourceController"],
         beego.ControllerComments{
             Method: "Upload",