Biblioteca de Códigos QR em Go

Gere Códigos QR com Go

Go é ideal para geração de códigos QR de alto desempenho em microserviços e ferramentas CLI. Use a biblioteca go-qrcode para geração local ou a API do QRCode.fun para saídas estilizadas.

Instalação

Instale a biblioteca de códigos QR Go usando go get.

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

Gerar Códigos QR com Go

Exemplos de código usando a biblioteca 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

Gerar Códigos QR via API em Go

Chame a API do QRCode.fun a partir de Go para gerar códigos QR estilizados.

Integração de 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]))
}

Pré-visualização de Código QR ao Vivo

Experimente gerar um código QR com Go agora mesmo.

Pré-visualização QR

Biblioteca Nativa vs API

Compare o uso de uma biblioteca de códigos QR Go com a API do QRCode.fun.

FuncionalidadeBiblioteca NativaQRCode.fun API
Complexidade de configuraçãogo get + importUma única requisição HTTP
PersonalizaçãoTamanho, correção de errosEstilização completa: cores, formas, logotipos
Suporte offlineSimRequer internet
ManutençãoAtualizar go.modSempre atualizado
Formatos de saídaPNGPNG, SVG

Casos de Uso de Códigos QR em Go

Cenários comuns para códigos QR em aplicações Go.

Microserviços

Gere códigos QR em microserviços Go para respostas de API, webhooks e arquiteturas orientadas a eventos.

Ferramentas CLI

Construa utilitários de linha de comando que geram códigos QR para partilha de Wi-Fi, encurtamento de URL ou exibição no terminal.

Funções Cloud

Implemente a geração de QR como funções serverless no AWS Lambda ou Google Cloud Functions usando Go.

DevOps e Infraestrutura

Gere códigos QR para URLs de deployment, dashboards de monitoramento e endpoints de configuração.

Perguntas Frequentes

Perguntas comuns sobre a geração de códigos QR com Go.

skip2/go-qrcode é a biblioteca de códigos QR Go mais popular. Gera imagens PNG e suporta tamanho configurável e níveis de correção de erros.

Comece a gerar códigos QR com Go

Use o nosso gerador gratuito ou integre a API nos seus serviços Go.