Для проверки того, был ли файл загружен на сервер при помощи языка Go, необходимо выполнить следующие шаги:
- Создайте сервер, который принимает HTTP-запросы. Используйте пакет
net/http
для создания HTTP-сервера.
package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/upload", handleUpload) log.Fatal(http.ListenAndServe(":8080", nil)) } func handleUpload(w http.ResponseWriter, r *http.Request) { // ваш код для обработки загрузки файла }
- В функции
handleUpload
обработайте HTTP-запрос и проверьте, был ли файл передан в теле запроса. Для этого можно воспользоваться функциейParseMultipartForm
, если файл передается как часть многочастного тела запроса (multipart form data), или методомr.FormFile
, если файл передается как параметр формы (form data).
func handleUpload(w http.ResponseWriter, r *http.Request) { // Проверяем тип запроса if r.Method != http.MethodPost { http.Error(w, "Only POST requests are supported", http.StatusBadRequest) return } // Проверяем наличие файла в теле запроса file, header, err := r.FormFile("file") if err != nil { http.Error(w, "Failed to read file from request", http.StatusBadRequest) return } defer file.Close() // В файле содержится информация о загруженном файле fmt.Printf("Uploaded File: %+vn", header.Filename) }
- В этом примере мы предполагаем, что файл передается как параметр формы с именем "file". Мы используем функцию
r.FormFile
для получения файла из запроса. Если файл найден, он открывается для дальнейшей обработки. В данном примере мы просто выводим имя файла в консоль, но вы можете выполнить любое другое действие с файлом на свое усмотрение.
- Запустите сервер и отправьте POST-запрос на путь
/upload
, включая файл в теле запроса. Если файл был успешно загружен, его имя будет выведено в консоли.
Теперь вы можете использовать этот базовый пример, чтобы проверять наличие загруженных файлов в вашем приложении на Go. Вы можете добавить дополнительную обработку сервера и файлов в соответствии с вашими требованиями.