From 7ddb67ea4115dc22f8a542a883c1a99df7a4773b Mon Sep 17 00:00:00 2001 From: xiaoqidun Date: Fri, 23 Oct 2026 19:08:13 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E5=8E=9F=E7=94=9F=E6=A1=8C=E9=9D=A2):=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0build.bat=EF=BC=8C=E5=8F=8C=E5=87=BB=E5=8D=B3?= =?UTF-8?q?=E5=8F=AF=E5=AE=8C=E6=88=90=E6=A1=8C=E9=9D=A2=E7=89=88=E6=9E=84?= =?UTF-8?q?=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 16 ++++++++-------- build.bat | 18 ++++++++++++++++++ internal/webview/webview.go | 1 + 3 files changed, 27 insertions(+), 8 deletions(-) create mode 100644 build.bat diff --git a/README.md b/README.md index 807a471..fe38c34 100644 --- a/README.md +++ b/README.md @@ -68,20 +68,20 @@ go build -o ofdgo_webui.exe -trimpath -ldflags "-s -w -buildid=" ./cmd/webui/web ```batch set CGO_ENABLED=0 -:: 构建Windows amd64(x64/x86_64) -set GOOS=windows -set GOARCH=amd64 -go build -o ofdgo_windows_amd64.exe -trimpath -ldflags "-H windowsgui -s -w -buildid=" ./cmd/webview +:: 构建Linux arm64(aarch64) +set GOOS=linux +set GOARCH=arm64 +go build -o ofdgo_linux_arm64 -trimpath -ldflags "-s -w -buildid=" ./cmd/webview :: 构建Linux amd64(x64/x86_64) set GOOS=linux set GOARCH=amd64 go build -o ofdgo_linux_amd64 -trimpath -ldflags "-s -w -buildid=" ./cmd/webview -:: 构建Linux arm64(aarch64) -set GOOS=linux -set GOARCH=arm64 -go build -o ofdgo_linux_arm64 -trimpath -ldflags "-s -w -buildid=" ./cmd/webview +:: 构建Windows amd64(x64/x86_64) +set GOOS=windows +set GOARCH=amd64 +go build -o ofdgo_windows_amd64.exe -trimpath -ldflags "-H windowsgui -s -w -buildid=" ./cmd/webview ``` # 安装引擎 diff --git a/build.bat b/build.bat new file mode 100644 index 0000000..6c03bae --- /dev/null +++ b/build.bat @@ -0,0 +1,18 @@ +setlocal +set Version= +for /f %%V in ('git show -s --format^=%%ct-%%H HEAD') do set Version=%%V + +set GOOS=linux +set GOARCH=arm64 +set CGO_ENABLED=0 +go build -o releases/ofdgo_linux_arm64 -trimpath -ldflags "-s -w -buildid= -X github.com/xiaoqidun/ofdgo/internal/build.Version=%Version%" ./cmd/webview + +set GOOS=linux +set GOARCH=amd64 +set CGO_ENABLED=0 +go build -o releases/ofdgo_linux_amd64 -trimpath -ldflags "-s -w -buildid= -X github.com/xiaoqidun/ofdgo/internal/build.Version=%Version%" ./cmd/webview + +set GOOS=windows +set GOARCH=amd64 +set CGO_ENABLED=0 +go build -o releases/ofdgo_windows_amd64.exe -trimpath -ldflags "-H windowsgui -s -w -buildid= -X github.com/xiaoqidun/ofdgo/internal/build.Version=%Version%" ./cmd/webview \ No newline at end of file diff --git a/internal/webview/webview.go b/internal/webview/webview.go index 726aabc..1e0e30d 100644 --- a/internal/webview/webview.go +++ b/internal/webview/webview.go @@ -210,6 +210,7 @@ func (h *Host) resource(r *http.Request) (*guigo.Resource, error) { contentType = http.DetectContentType(header) } headers := http.Header{"Content-Type": {contentType}, "Content-Length": {strconv.FormatInt(size, 10)}, "Cache-Control": {"no-store"}, "Accept-Ranges": {"bytes"}} + headers.Set("X-OFDGo-Build-Version", build.Version) start, length, status := int64(0), size, http.StatusOK if value := r.Header.Get("Range"); value != "" && r.Method == http.MethodGet { if !strings.HasPrefix(value, "bytes=") || strings.Contains(value, ",") {