Add endpoint for QR Code generation

This commit is contained in:
Danijel Fischer
2020-06-13 13:16:23 +02:00
parent 673c7045aa
commit b06dd9afb4
2 changed files with 31 additions and 1 deletions

View File

@@ -14,7 +14,9 @@ import (
"github.com/gin-gonic/gin"
"github.com/h2non/filetype"
uuid "github.com/satori/go.uuid"
log "github.com/sirupsen/logrus"
qrcode "github.com/skip2/go-qrcode"
)
const groupPrefix = "group."
@@ -496,5 +498,23 @@ func main() {
}
})
router.GET("/v1/qrcode/:tsdevice_link", func(c *gin.Context) {
deviceLink := c.Param("tsdevice_link")
q, err := qrcode.New(deviceLink, qrcode.Medium)
if err != nil {
c.JSON(400, gin.H{"error": err.Error()})
}
q.DisableBorder = true
var png []byte
png, err = q.PNG(256)
if err != nil {
c.JSON(400, gin.H{"error": err.Error()})
}
c.Data(200, "image/png", png)
})
router.Run()
}