Для проверки того, был ли файл загружен на сервер при помощи языка Go, необходимо выполнить следующие шаги:
1. Создайте сервер, который принимает 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) { // ваш код для обработки загрузки файла }
2. В функции 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) }
3. В этом примере мы предполагаем, что файл передается как параметр формы с именем "file". Мы используем функцию r.FormFile
для получения файла из запроса. Если файл найден, он открывается для дальнейшей обработки. В данном примере мы просто выводим имя файла в консоль, но вы можете выполнить любое другое действие с файлом на свое усмотрение.
4. Запустите сервер и отправьте POST-запрос на путь /upload
, включая файл в теле запроса. Если файл был успешно загружен, его имя будет выведено в консоли.
Теперь вы можете использовать этот базовый пример, чтобы проверять наличие загруженных файлов в вашем приложении на Go. Вы можете добавить дополнительную обработку сервера и файлов в соответствии с вашими требованиями.