Class: Jets::Controller::Request
- Inherits:
-
Object
- Object
- Jets::Controller::Request
- Defined in:
- lib/jets/controller/request.rb
Constant Summary collapse
- HEADER_METHODS =
lambda integration proxy headers
%w[ Accept Accept-Encoding Accept-Language cache-control CloudFront-Forwarded-Proto CloudFront-Is-Desktop-Viewer CloudFront-Is-Mobile-Viewer CloudFront-Is-SmartTV-Viewer CloudFront-Is-Tablet-Viewer CloudFront-Viewer-Country content-type Host origin Referer upgrade-insecure-requests User-Agent Via X-Amz-Cf-Id X-Amzn-Trace-Id X-Forwarded-For X-Forwarded-Port X-Forwarded-Proto ].freeze
Instance Method Summary collapse
-
#headers ⇒ Object
API Gateway is inconsistent about how it cases it keys.
-
#initialize(event) ⇒ Request
constructor
A new instance of Request.
- #xhr? ⇒ Boolean
Constructor Details
#initialize(event) ⇒ Request
Returns a new instance of Request.
4 5 6 |
# File 'lib/jets/controller/request.rb', line 4 def initialize(event) @event = event end |
Instance Method Details
#headers ⇒ Object
API Gateway is inconsistent about how it cases it keys. Sometimes it is “x-requested-with” vs “X-Requested-With” Normalize it with downcase.
45 46 47 48 |
# File 'lib/jets/controller/request.rb', line 45 def headers headers = @event["headers"] || {} headers.transform_keys { |key| key.downcase } end |
#xhr? ⇒ Boolean
50 51 52 |
# File 'lib/jets/controller/request.rb', line 50 def xhr? headers["x-requested-with"] == "XMLHttpRequest" end |