Petit framework web en go pour des petites applications avec chargement des templates et serveur intégré
Go to file
klmp200 a0a41cf8c8
All checks were successful
continuous-integration/drone/push Build is passing
the build was successful
Removed typo
2018-07-18 20:06:50 +02:00
.drone.yml First session system 2018-07-18 00:00:51 +02:00
cookie.go First session system 2018-07-18 00:00:51 +02:00
file-session-provider.go First session system 2018-07-18 00:00:51 +02:00
gowebframework.go Removed typo 2018-07-18 20:06:50 +02:00
is-writable_windows.go First session system 2018-07-18 00:00:51 +02:00
is-writable.go First session system 2018-07-18 00:00:51 +02:00
LICENSE Initial commit 2018-07-14 10:34:52 +00:00
README.md Removed typo 2018-07-18 20:06:50 +02:00
session.go Removed silly print 2018-07-18 00:03:38 +02:00

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 :

{
	"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()