create structure for future server

This commit is contained in:
Сергей Петров 2025-02-20 18:01:34 +05:00
parent dfbe5cc941
commit 96ee1fd8b8
3 changed files with 41 additions and 0 deletions

View File

@ -0,0 +1,5 @@
package main
func main() {
}

3
reader/server/go.mod Normal file
View File

@ -0,0 +1,3 @@
module server
go 1.23

View File

@ -0,0 +1,33 @@
package main
import (
"log"
"net/http"
"os"
)
func serveVideo(w http.ResponseWriter, r *http.Request) {
filePath := "files/111.mp4"
// Открытие запрашиваемого файла
file, err := os.Open(filePath)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
log.Fatalln("Ошибка открытия файла: ", err)
return
}
defer func() {
err = file.Close()
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
log.Fatalln("Ошибка закрытия файла: ", err)
return
}
}()
w.Header().Set("Content-Type", "video/mp4")
// Разрешаем частичную загрузку (поддержка перемотки)
w.Header().Set("Accept-Ranges", "bytes")
http.ServeFile(w, r, filePath)
}