Golang GIN. Не может загрузить module scripts

У меня есть пару js файлов, которые связаны с собой через export, import. Все данные файлы находятся в папке js. Вот дерево проекта:

.
├── conf
│   ├── config.go
│   ├── config.json
│   └── types.go
├── go.mod
├── go.sum
├── ico
│   └── logo.ico
├── main.go
├── server
│   ├── handlers.go
│   └── server.go
└── ui
    ├── css
    │   ├── index.css
    │   └── index.sass
    ├── index.html
    └── js
        ├── config.js
        ├── generate-item.js
        ├── index.js
        ├── key.js
        ├── request-json.js
        └── update-price.js

Ну и естественно я роучу js файлы используя GIN'овский router.Static():

r.Static("/js", "ui/js")

Файлы находит, если перейти по урлу "host:port/js/filename.js", то можно увидеть исходный код файла.

Но вот только JS сам нигде не отображается, а в консоле висит ошибка:

Failed to load module script: The server responded with a non-JavaScript MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.

В чем проблема? Как можно её исправить? Заранее спасибо!


Ответы (1 шт):

Автор решения: yeahyeahcore

В общем, нужно было в заголовок установить application/x-javascript. Используя gin и пример кода, мне помогло данное решение:

func JSHandler(c *gin.Context) {
    c.Writer.Header().Set("Content-Type", "application/x-javascript")
}

r.HEAD("/js", JSHandler)
→ Ссылка