gofmt programm
This commit is contained in:
parent
d27d29ae34
commit
7cc4b410dc
1 changed files with 22 additions and 23 deletions
45
go/main.go
45
go/main.go
|
@ -1,6 +1,8 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"crypto/rand"
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io"
|
||||
|
@ -12,8 +14,6 @@ import (
|
|||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
"crypto/rand"
|
||||
"encoding/base64"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -27,9 +27,9 @@ func main() {
|
|||
http.HandleFunc("/upload", uploadHandler)
|
||||
http.HandleFunc("/image/", imageHandler)
|
||||
http.HandleFunc("/view/", viewHandler)
|
||||
// Statischen Dateipfad setzen
|
||||
fs := http.FileServer(http.Dir("static"))
|
||||
http.Handle("/static/", http.StripPrefix("/static/", fs))
|
||||
// Statischen Dateipfad setzen
|
||||
fs := http.FileServer(http.Dir("static"))
|
||||
http.Handle("/static/", http.StripPrefix("/static/", fs))
|
||||
|
||||
fmt.Println("Server listening on :8080")
|
||||
http.ListenAndServe(":8080", nil)
|
||||
|
@ -59,27 +59,26 @@ func homeHandler(w http.ResponseWriter, r *http.Request) {
|
|||
}
|
||||
|
||||
func generateNonce() (string, error) {
|
||||
nonceBytes := make([]byte, 16) // 16 Bytes generieren eine ausreichend lange Zeichenfolge für den Nonce
|
||||
if _, err := rand.Read(nonceBytes); err != nil {
|
||||
return "", err // Im Fehlerfall, geben Sie den Fehler zurück
|
||||
}
|
||||
return base64.StdEncoding.EncodeToString(nonceBytes), nil
|
||||
nonceBytes := make([]byte, 16) // 16 Bytes generieren eine ausreichend lange Zeichenfolge für den Nonce
|
||||
if _, err := rand.Read(nonceBytes); err != nil {
|
||||
return "", err // Im Fehlerfall, geben Sie den Fehler zurück
|
||||
}
|
||||
return base64.StdEncoding.EncodeToString(nonceBytes), nil
|
||||
}
|
||||
|
||||
|
||||
func uploadHandler(w http.ResponseWriter, r *http.Request) {
|
||||
nonce, err := generateNonce()
|
||||
if err != nil {
|
||||
// Fehlerbehandlung, z.B. Senden eines Serverfehlers
|
||||
http.Error(w, "Serverfehler", http.StatusInternalServerError)
|
||||
log.Printf("Fehler beim Generieren des Nonce: %v", err)
|
||||
return
|
||||
}
|
||||
nonce, err := generateNonce()
|
||||
if err != nil {
|
||||
// Fehlerbehandlung, z.B. Senden eines Serverfehlers
|
||||
http.Error(w, "Serverfehler", http.StatusInternalServerError)
|
||||
log.Printf("Fehler beim Generieren des Nonce: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
// Setzen der Content Security Policy
|
||||
//w.Header().Set("Content-Security-Policy", "default-src 'self'; script-src 'self'; object-src 'none';")
|
||||
//w.Header().Set("Content-Security-Policy", fmt.Sprintf("default-src 'self'; script-src 'self' 'nonce-%s'; object-src 'none';", nonce))
|
||||
w.Header().Set("Content-Security-Policy", fmt.Sprintf("script-src 'self' 'nonce-%s';", nonce))
|
||||
//w.Header().Set("Content-Security-Policy", "default-src 'self'; script-src 'self'; object-src 'none';")
|
||||
//w.Header().Set("Content-Security-Policy", fmt.Sprintf("default-src 'self'; script-src 'self' 'nonce-%s'; object-src 'none';", nonce))
|
||||
w.Header().Set("Content-Security-Policy", fmt.Sprintf("script-src 'self' 'nonce-%s';", nonce))
|
||||
|
||||
mu.Lock()
|
||||
defer mu.Unlock()
|
||||
|
@ -163,11 +162,11 @@ func uploadHandler(w http.ResponseWriter, r *http.Request) {
|
|||
data := struct {
|
||||
Message string
|
||||
Filename string
|
||||
Nonce string
|
||||
Nonce string
|
||||
}{
|
||||
Message: "Bild erfolgreich hochgeladen.",
|
||||
Filename: filename, // Geändert, um den möglicherweise modifizierten Dateinamen anzuzeigen
|
||||
Nonce: nonce,
|
||||
Nonce: nonce,
|
||||
}
|
||||
|
||||
err = tmpl.Execute(w, data)
|
||||
|
|
Loading…
Reference in a new issue