Проблема с кодировкой в go?

Добрый день. Я при загрузке приложения загружаю из базы список людей. Потом, когда авторизуется человек, в его сессию вносятся id, FIO, ... (кирилица).

Когда я из сессии беру значение FIO, я получаю абракадабру. Кодировка всех файлов UTF-8 (пробовал и ANSI Windows).

Вывожу данные

session, _ := store.Get(r, "SessionId")
Id := session.Values["Id"].(int)
FIO := session.Values["FIO"].(string)
Role := session.Values["Role"].(string)
log.Println(
"Клиент подключился сокет=", Soc_Id, ". id- ", Id, " ФИО- ", FIO,
" Роль- ", Role) // Консоль выводит "нормальные данные"
fmt.Fprintln(w, "Привет ", FIO) // А здесь абракадабра

Сохранил все файлы в UTF-8 (и с Bom и без пробовал)
Поидее-если же в сессию записываются нормальные значения, а уже от туда выходят иероглифы-значит где-то там копать?
Я даже взял и gopath нашёл пакет сессий и каждый файл там сохранил в UTF-8 (и с Bom и без)- всёравно иероглифы.

Где менять кодировку или что делать в данной ситуации?
  • Вопрос задан
  • 681 просмотр
Решения вопроса 1
@TwoRS Автор вопроса
Решил
w.Header().Set("Content-type", "text/html; charset=utf-8") -это перед выводом написать. Файл должен быть в кодировке UTF-8
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы