Libreria Go per QR Code

Genera QR Code con Go

Go è ideale per la generazione ad alte prestazioni di QR code in microservizi e strumenti CLI. Usa la libreria go-qrcode per la generazione locale o l'API QRCode.fun per output stilizzati.

Installazione

Installa la libreria Go per QR code usando go get.

go get
go get github.com/skip2/go-qrcode

Genera QR Code con Go

Esempi di codice usando la libreria go-qrcode.

Basic QR Code Generation
package main

import "github.com/skip2/go-qrcode"

func main() {
    err := qrcode.WriteFile("https://qrcode.fun", qrcode.Medium, 256, "qrcode.png")
    if err != nil {
        panic(err)
    }
}
QR Code as Bytes (HTTP Handler)
package main

import (
    "net/http"
    "github.com/skip2/go-qrcode"
)

func qrHandler(w http.ResponseWriter, r *http.Request) {
    data := r.URL.Query().Get("data")
    if data == "" {
        data = "https://qrcode.fun"
    }

    png, err := qrcode.Encode(data, qrcode.Medium, 256)
    if err != nil {
        http.Error(w, err.Error(), 500)
        return
    }

    w.Header().Set("Content-Type", "image/png")
    w.Write(png)
}

func main() {
    http.HandleFunc("/qr", qrHandler)
    http.ListenAndServe(":8080", nil)
}
QRCode.fun API

Genera QR Code tramite API in Go

Chiama l'API QRCode.fun da Go per generare QR code stilizzati.

Integrazione API Go
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
)

func main() {
    payload := map[string]interface{}{
        "data":   "https://qrcode.fun",
        "width":  300,
        "height": 300,
        "type":   "png",
        "margin": 10,
        "dotsOptions": map[string]string{
            "color": "#1A2B3C",
            "type":  "rounded",
        },
        "cornersSquareOptions": map[string]string{
            "color": "#8564C3",
            "type":  "extra-rounded",
        },
        "backgroundOptions": map[string]string{
            "color": "#FFFFFF",
        },
    }

    body, _ := json.Marshal(payload)
    resp, err := http.Post(
        "https://qrcode.fun/api/generate-qr-styled",
        "application/json",
        bytes.NewBuffer(body),
    )
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    data, _ := io.ReadAll(resp.Body)
    fmt.Println(string(data[:100]))
}

Anteprima QR Code Live

Prova a generare un QR code con Go adesso.

Anteprima QR

Libreria Nativa vs API

Confronta l'uso di una libreria Go per QR code con l'API QRCode.fun.

FunzionalitàLibreria NativaQRCode.fun API
Complessità di configurazionego get + importSingola richiesta HTTP
PersonalizzazioneDimensione, correzione erroriStile completo: colori, forme, loghi
Supporto offlineRichiede internet
ManutenzioneAggiorna go.modSempre aggiornato
Formati di outputPNGPNG, SVG

Casi d'Uso Go per QR Code

Scenari comuni per QR code nelle applicazioni Go.

Microservizi

Genera QR code nei microservizi Go per risposte API, webhook e architetture event-driven.

Strumenti CLI

Crea utility a riga di comando che generano QR code per condivisione Wi-Fi, abbreviazione URL o visualizzazione nel terminale.

Funzioni Cloud

Distribuisci la generazione QR come funzioni serverless su AWS Lambda o Google Cloud Functions usando Go.

DevOps e Infrastruttura

Genera QR code per URL di deploy, dashboard di monitoraggio e endpoint di configurazione.

Domande Frequenti

Domande comuni sulla generazione di QR code con Go.

skip2/go-qrcode è la libreria Go per QR code più popolare. Genera immagini PNG e supporta dimensioni e livelli di correzione errori configurabili.

Inizia a generare QR code con Go

Usa il nostro generatore gratuito o integra l'API nei tuoi servizi Go.