Skip to content

elazarl/go-bindata-assetfs

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

go-bindata-assetfs

Serve embedded files from go-bindata with net/http.

GoDoc

Installation

Install with

$ go get github.com/go-bindata/go-bindata/...
$ go get github.com/elazarl/go-bindata-assetfs/...

Creating embedded data

Usage is identical to go-bindata usage, instead of running go-bindata run go-bindata-assetfs.

The tool will create a bindata_assetfs.go file, which contains the embedded data.

A typical use case is

$ go-bindata-assetfs data/...

Using assetFS in your code

The generated file provides an assetFS() function that returns a http.Filesystem wrapping the embedded files. What you usually want to do is:

http.Handle("/", http.FileServer(assetFS()))

This would run an HTTP server serving the embedded files.

Without running binary tool

You can always just run the go-bindata tool, and then

use

import "github.com/elazarl/go-bindata-assetfs"
...
http.Handle("/",
http.FileServer(
&assetfs.AssetFS{Asset: Asset, AssetDir: AssetDir, AssetInfo: AssetInfo, Prefix: "data"}))

to serve files embedded from the data directory.

SPA applications

For single page applications you can use Fallback: "index.html" in AssetFS context, so if route doesn't match the pattern it will fallback to file specified.

example

import "github.com/elazarl/go-bindata-assetfs"
...
http.Handle("/",
http.FileServer(
&assetfs.AssetFS{Asset: Asset, AssetDir: AssetDir, AssetInfo: AssetInfo, Prefix: "data", Fallback: "index.html"}))

About

Serves embedded files from `jteeuwen/go-bindata` with `net/http`

Resources

License

Stars

Watchers

Forks

Packages

No packages published