gds-api-adapters 28.1.1 → 28.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e902ac4880261bd833cfaaf435bb6c6887337f7f
4
- data.tar.gz: 078679c8c239e9f431da180ebf87a205a8683f9b
3
+ metadata.gz: b9723069f15e906994434db9e846a9d312f7bdb1
4
+ data.tar.gz: 04a3f4851097ca03fbb130f14f32380fa9ee9d0e
5
5
  SHA512:
6
- metadata.gz: eca01f58f14c1e86a7c947480ede2b024fd5e8d179442388b9f3336d3d18e34f207c897740a40a5f1f566ab079c4150bb61b531115a9ce8a99607063b132d7e6
7
- data.tar.gz: b02e5d2a3f9696d48d7ca587b86ea132a4186ecf5b74029bf4a9487b0681c389ccd999546c7924bda4c38932d369c22401294e2e2a595bec2501567c97ffb5bf
6
+ metadata.gz: da34eae72d2c0fcf451b4db6376aaa74ac268bd1fee74ef6ad541727e626855a7497e34934f77345c09875a9ff873c06b4de6fbc58c4d4c5ac5d0772230c0fbc
7
+ data.tar.gz: 7fb8ebf8449dc9eeb9c63f26d8eb19bc4203d2056ceffca321d776e64ad0b06d371ab262cacc4bca683c3b16c3e1345efbbcbfb6cd3c51e914582a8fadbd66e1
data/README.md CHANGED
@@ -31,15 +31,19 @@ something that actually logs:
31
31
 
32
32
  ## Middleware for request tracing
33
33
 
34
- We set a unique header at the cache level called `Govuk-Request-Id`. In order
35
- to serve a user's request, if apps make API requests they should pass on this
36
- header, so that we can trace a request across the entire GOV.UK stack.
34
+ We set a unique header at the cache level called `Govuk-Request-Id`, and also
35
+ set a header called `Govuk-Original-Url` to identify the original URL
36
+ requested. If apps make API requests in order to server a user's request, they
37
+ should pass on these headers, so that we can trace requests across the entire
38
+ GOV.UK stack.
37
39
 
38
- `GdsApi::GovukHeaderSniffer` middleware takes care of this. This gem contains
39
- a railtie that configures this middleware for Rails apps without extra effort.
40
- Other Rack-based apps should opt-in by adding this line to your `config.ru`:
40
+ The `GdsApi::GovukHeaderSniffer` middleware takes care of this. This gem
41
+ contains a railtie that configures this middleware for Rails apps without extra
42
+ effort. Other Rack-based apps should opt-in by adding these lines to your
43
+ `config.ru`:
41
44
 
42
45
  use GdsApi::GovukHeaderSniffer, 'HTTP_GOVUK_REQUEST_ID'
46
+ use GdsApi::GovukHeaderSniffer, 'HTTP_GOVUK_ORIGINAL_URL'
43
47
 
44
48
  ## Middleware for identifying authenticated users
45
49
 
@@ -7,6 +7,11 @@ module GdsApi
7
7
  app.middleware.use GdsApi::GovukHeaderSniffer, 'HTTP_GOVUK_REQUEST_ID'
8
8
  end
9
9
 
10
+ initializer "gds_api.initialize_govuk_original_url_sniffer" do |app|
11
+ Rails.logger.info "Using middleware GdsApi::GovukHeaderSniffer to sniff for GOVUK-Original-Url header"
12
+ app.middleware.use GdsApi::GovukHeaderSniffer, 'HTTP_GOVUK_ORIGINAL_URL'
13
+ end
14
+
10
15
  initializer "gds_api.initialize_govuk_authenticated_user_sniffer" do |app|
11
16
  Rails.logger.info "Using middleware GdsApi::GovukHeaderSniffer to sniff for X-GOVUK-Authenticated-User header"
12
17
  app.middleware.use GdsApi::GovukHeaderSniffer, 'HTTP_X_GOVUK_AUTHENTICATED_USER'
@@ -1,3 +1,3 @@
1
1
  module GdsApi
2
- VERSION = '28.1.1'
2
+ VERSION = '28.2.0'
3
3
  end
@@ -702,13 +702,17 @@ class JsonClientTest < MiniTest::Spec
702
702
  end
703
703
 
704
704
  def test_govuk_headers_are_included_in_requests_if_present
705
- GdsApi::GovukHeaders.set_header(:govuk_request_id, "12345") # set by middleware GovukHeaderSniffer
705
+ # set headers which would be set by middleware GovukHeaderSniffer
706
+ GdsApi::GovukHeaders.set_header(:govuk_request_id, "12345")
707
+ GdsApi::GovukHeaders.set_header(:govuk_original_url, "http://example.com")
708
+
706
709
  stub_request(:get, "http://some.other.endpoint/some.json").to_return(:status => 200)
707
710
 
708
711
  GdsApi::JsonClient.new.get_json("http://some.other.endpoint/some.json")
709
712
 
710
713
  assert_requested(:get, %r{/some.json}) do |request|
711
- request.headers['Govuk-Request-Id'] == '12345'
714
+ request.headers['Govuk-Request-Id'] == '12345' &&
715
+ request.headers['Govuk-Original-Url'] == 'http://example.com'
712
716
  end
713
717
  end
714
718
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gds-api-adapters
3
3
  version: !ruby/object:Gem::Version
4
- version: 28.1.1
4
+ version: 28.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Stewart
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-18 00:00:00.000000000 Z
11
+ date: 2016-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: plek