РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1048 of 1593 menu

Функция http.DetectContentType

Функция http.DetectContentType определяет MIME-тип данных на основе анализа первых 512 байт переданного слайса байтов. В первый параметр мы передаем слайс байтов []byte, содержимое которого нужно проанализировать. Функция возвращает строку с MIME-типом. Если тип не удается определить, возвращается значение "application/octet-stream".

Синтаксис

http.DetectContentType(data []byte) string

Пример

Давайте определим MIME-тип для простой текстовой строки:

package main import ( "fmt" "net/http" ) func main() { data := []byte("abcde") res := http.DetectContentType(data) fmt.Println(res) }

Результат выполнения кода:

"text/plain; charset=utf-8"

Пример

Давайте определим MIME-тип для JSON-данных:

package main import ( "fmt" "net/http" ) func main() { jsonData := []byte(`{"key": "value"}`) res := http.DetectContentType(jsonData) fmt.Println(res) }

Результат выполнения кода:

"application/json"

Пример

Давайте определим MIME-тип для HTML-данных:

package main import ( "fmt" "net/http" ) func main() { htmlData := []byte("<html><body>Hello</body></html>") res := http.DetectContentType(htmlData) fmt.Println(res) }

Результат выполнения кода:

"text/html; charset=utf-8"

Пример

Давайте определим MIME-тип для бинарных данных, где тип не удается распознать:

package main import ( "fmt" "net/http" ) func main() { binaryData := []byte{0x00, 0x01, 0x02, 0x03} res := http.DetectContentType(binaryData) fmt.Println(res) }

Результат выполнения кода:

"application/octet-stream"

Смотрите также

  • функцию http.DetectContentType,
    которая определяет MIME-тип данных
  • функцию http.ParseHTTPVersion,
    которая разбирает строку версии HTTP
  • функцию http.CanonicalHeaderKey,
    которая приводит заголовок к каноническому виду
  • функцию http.ServeContent,
    которая отправляет содержимое файла в ответ
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить