feat: add FlareSolverr proxy support with DB-backed config
- Add config table for storing FlareSolverr proxy setting
- Add HTTP endpoints to get/set proxy status (GET/POST /api/config/flaresolverr)
- Refactor httpclient to support proxy mode (requests go through FlareSolverr)
- Add verbose logging for debugging
- Add POST support to FlareSolverr client
Usage:
GET /api/config/flaresolverr - returns {flaresolverr_proxy: bool}
POST /api/config/flaresolverr - body: {enabled: true/false}
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.31.1
|
||||
// source: config.sql
|
||||
|
||||
package queries
|
||||
|
||||
import (
|
||||
"context"
|
||||
)
|
||||
|
||||
const getConfigValue = `-- name: GetConfigValue :one
|
||||
SELECT value FROM config WHERE key = $1
|
||||
`
|
||||
|
||||
func (q *Queries) GetConfigValue(ctx context.Context, key string) (string, error) {
|
||||
row := q.db.QueryRow(ctx, getConfigValue, key)
|
||||
var value string
|
||||
err := row.Scan(&value)
|
||||
return value, err
|
||||
}
|
||||
|
||||
const setConfigValue = `-- name: SetConfigValue :exec
|
||||
INSERT INTO config (key, value) VALUES ($1, $2)
|
||||
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value
|
||||
`
|
||||
|
||||
type SetConfigValueParams struct {
|
||||
Key string `db:"key" json:"key"`
|
||||
Value string `db:"value" json:"value"`
|
||||
}
|
||||
|
||||
func (q *Queries) SetConfigValue(ctx context.Context, arg SetConfigValueParams) error {
|
||||
_, err := q.db.Exec(ctx, setConfigValue, arg.Key, arg.Value)
|
||||
return err
|
||||
}
|
||||
Reference in New Issue
Block a user