1package main
2
3import (
4 "log"
5 "net/http"
6
7 "github.com/dchest/uniuri"
8 "github.com/dgraph-io/badger/v3"
9)
10
11func create(writer http.ResponseWriter, request *http.Request) {
12 var url string
13 if request.URL.Query().Get("url") == "" {
14 http.Error(writer, "Bad request - URL parameter is required", 400)
15 } else {
16 url = request.URL.Query().Get("url")
17 }
18
19 var name string
20 if request.URL.Query().Get("name") == "" {
21 name = request.URL.Query().Get("name")
22 } else {
23 name = uniuri.NewLen(4)
24 }
25
26 err := db.Update(func(txn *badger.Txn) error {
27 return txn.Set([]byte(name), []byte(url))
28 })
29 if err != nil {
30 log.Fatal(err)
31 }
32}