Maison >développement back-end >Golang >Comment inclure des fichiers JavaScript locaux dans les modèles Go ?

Comment inclure des fichiers JavaScript locaux dans les modèles Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-21 21:13:38924parcourir

How to Include Local JavaScript Files in Go Templates?

Inclure les fichiers JavaScript dans les modèles Go

Vous rencontrez des problèmes lors de l'inclusion d'un fichier JavaScript local dans votre modèle Go. Explorons comment résoudre ce problème facilement :

Option 1 : Gestion manuelle des fichiers

Écrivez votre propre fonction de gestionnaire pour lire le contenu du fichier, définissez le type de contenu approprié, et envoyez-le en réponse :

func SendJqueryJs(w http.ResponseWriter, r *http.Request) {
    data, err := ioutil.ReadFile("jquery.min.js")
    if err != nil {
        http.Error(w, "Couldn't read file", http.StatusInternalServerError)
        return
    }
    w.Header().Set("Content-Type", "application/javascript; charset=utf-8")
    w.Write(data)
}

Option 2 : Utiliser http.ServeFile()

Cette fonction simplifie le service de fichiers en gérant la lecture des fichiers et la définition du type de contenu :

func SendJqueryJs(w http.ResponseWriter, r *http.Request) {
    http.ServeFile(w, r, "jquery.min.js")
}

Option 3 : Exploiter http.FileServer()

Pour servir plusieurs fichiers statiques :

http.Handle("/tmpfiles/",
    http.StripPrefix("/tmpfiles/", http.FileServer(http.Dir("/tmp"))))

Ceci enregistre un gestionnaire à /tmpfiles/ qui sert les fichiers de votre répertoire /tmp local.

Par exemple, cette balise de script chargera jquery.min.js depuis /tmp :

<script type="text/javascript" src="/tmpfiles/jquery.min.js">

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn