File tree Expand file tree Collapse file tree 4 files changed +92
-1
lines changed Expand file tree Collapse file tree 4 files changed +92
-1
lines changed Original file line number Diff line number Diff line change 33[ ![ Coverage Status] ( https://coveralls.io/repos/github/DavidCai1993/fresh/badge.svg?branch=master )] ( https://coveralls.io/github/DavidCai1993/fresh?branch=master )
44
55HTTP response freshness testing for Go
6+
7+ ## Installation
8+
9+ ``` sh
10+ go get -u github.com/go-http-utils/fresh
11+ ```
12+
13+ ## Documentation
14+
15+ API documentation can be found here: https://godoc.org/github.com/go-http-utils/fresh
16+
17+ ## Usage
18+
19+ ``` go
20+ import (
21+ " net/http"
22+
23+ " github.com/go-http-utils/fresh"
24+ )
25+ ```
26+
27+ ``` go
28+ reqHeader , resHeader := make (http.Header ), make (http.Header )
29+
30+ reqHeader.Set (" if-none-match" , " foo" )
31+ resHeader.Set (" etag" , " bar" )
32+
33+ fresh.IsFresh (reqHeader, resHeader)
34+ // -> false
35+ ```
36+
37+ ``` go
38+ reqHeader , resHeader := make (http.Header ), make (http.Header )
39+
40+ reqHeader.Set (" if-modified-since" , " Mon, 14 Nov 2016 22:05:49 GMT" )
41+ resHeader.Set (" last-modified" , " Mon, 14 Nov 2016 22:05:47 GMT" )
42+
43+ fresh.IsFresh (reqHeader, resHeader)
44+ // -> true
45+ ```
Original file line number Diff line number Diff line change 1+ // Package fresh is used to check whether cache can be used in this HTTP request.
2+ //
3+ // ----------------------------------------------------------------
4+ //
5+ // reqHeader, resHeader := make(http.Header), make(http.Header)
6+ //
7+ // reqHeader.Set("if-none-match", "foo")
8+ // resHeader.Set("etag", "bar")
9+
10+ // fresh.IsFresh(reqHeader, resHeader)
11+ // // -> false
12+ //
13+ // ----------------------------------------------------------------
14+ //
15+ // reqHeader, resHeader := make(http.Header), make(http.Header)
16+
17+ // reqHeader.Set("if-modified-since", "Mon, 14 Nov 2016 22:05:49 GMT")
18+ // resHeader.Set("last-modified", "Mon, 14 Nov 2016 22:05:47 GMT")
19+
20+ // fresh.IsFresh(reqHeader, resHeader)
21+ // // -> true
22+ //
23+ // ----------------------------------------------------------------
24+
25+ package fresh
Original file line number Diff line number Diff line change 1+ package fresh_test
2+
3+ import (
4+ "fmt"
5+ "net/http"
6+
7+ "github.com/go-http-utils/fresh"
8+ )
9+
10+ func ExampleFresh_IsFresh () {
11+ reqHeader , resHeader := make (http.Header ), make (http.Header )
12+
13+ reqHeader .Set ("if-none-match" , "foo" )
14+ resHeader .Set ("etag" , "bar" )
15+
16+ fmt .Println (fresh .IsFresh (reqHeader , resHeader ))
17+ // -> false
18+
19+ reqHeader , resHeader = make (http.Header ), make (http.Header )
20+
21+ reqHeader .Set ("if-modified-since" , "Mon, 14 Nov 2016 22:05:49 GMT" )
22+ resHeader .Set ("last-modified" , "Mon, 14 Nov 2016 22:05:47 GMT" )
23+
24+ fmt .Println (fresh .IsFresh (reqHeader , resHeader ))
25+ // -> true
26+ }
Original file line number Diff line number Diff line change 77)
88
99// Version is this package's verison
10- const Version = "0.0.2 "
10+ const Version = "0.1.0 "
1111
1212// HTTP header fileds
1313const (
You can’t perform that action at this time.
0 commit comments