From 2d1244e93c5f599deb764cdbb7fda2172dd1b974 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Hedenstr=C3=B6m?= <erik@hedenstroem.com> Date: Wed, 19 Feb 2020 23:46:49 +0100 Subject: [PATCH] added icon handler --- cmd/root.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cmd/root.go b/cmd/root.go index 3a75a71..bf72649 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -2,6 +2,7 @@ package cmd import ( "fmt" + "image/png" "log" "net/http" "os" @@ -27,6 +28,11 @@ var filePath string var appInfo *ipapk.AppInfo var manifestTemplate *template.Template +func iconHandler(w http.ResponseWriter, req *http.Request) { + w.Header().Set("Content-Type", "image/png") + png.Encode(w, appInfo.Icon) +} + func qrcodeHandler(w http.ResponseWriter, req *http.Request) { w.Header().Set("Content-Type", "image/png") url := fmt.Sprintf("itms-services://?action=download-manifest&url=%s://%s/manifest.plist", scheme, req.Host) @@ -55,6 +61,7 @@ var rootCmd = &cobra.Command{ var err error appInfo, err = ipapk.NewAppParser(file) filePath = fmt.Sprintf("/%s", path.Base(file)) + http.HandleFunc("/icon.png", iconHandler) http.HandleFunc("/qrcode.png", qrcodeHandler) http.HandleFunc("/manifest.plist", manifestHandler) http.HandleFunc(filePath, fileDownloadHandler) -- GitLab