37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Go Web Framework
|
|
|
|
Petit framework web en go pour des petites applications avec chargement des templates et serveur intégré
|
|
|
|
Le framework se charche de servir les fichiers statiques (url: /static/) et, en mode debug, recharge automatiquement les templates.
|
|
|
|
Le fichier de configuration est passé dans `Configure()` et doit être au format json avec les paramètres suivants :
|
|
|
|
```json
|
|
{
|
|
"StaticFolderPath": "statics/",
|
|
"TemplateIncludePath": "templates/",
|
|
"TemplateLayoutPath": "templates/layouts/",
|
|
"TemplateExtensionPattern": "*.gohtml",
|
|
"ServerPort": "8000",
|
|
"ServerListenAddress": "0.0.0.0",
|
|
"Domain": "http://git.an",
|
|
"MainTemplate": "{{define \"main\" }} {{ template \"base\" . }} {{ end }}",
|
|
"Debug": false,
|
|
"SessionProvider": "FileProvider"
|
|
}
|
|
```
|
|
|
|
Des paramètres par défaut sont utilisé dans tous les cas.
|
|
|
|
Changer ServerListenAdress permet de contrôler sur quelles adresses écoutent le serveur. Par exemple localhost n'écoute que sur la machine hôte tandis que 0.0.0.0 écoute toutes les connexions entrantes.
|
|
|
|
Le système de session utilise un dossier `.session` généré automatiquement, attention aux permissions !
|
|
|
|
Il est possible de rajouter ses propres backend pour le système de session en les enregistrant grâce à la fonction `SessionProviderRegister`. Les backends doivent respecter l'interface `SessionProvider`.
|
|
|
|
Le MainTemplate est utilisé pour charger tous les templates, il peut être utilisé tel quel ou modifié si vous savez ce que fous faites. Dans le doute, laissez celui par défaut.
|
|
|
|
On lance enfin le serveur en utilisant `Start()`
|
|
|
|
Pour charger un template, il faut utiliser `RenderTemplate()`
|