https://github.com/salsify/net-http-report
Send HTTP REPORT requests using Ruby's net/http library.
https://github.com/salsify/net-http-report
gem
Last synced: 10 months ago
JSON representation
Send HTTP REPORT requests using Ruby's net/http library.
- Host: GitHub
- URL: https://github.com/salsify/net-http-report
- Owner: salsify
- License: mit
- Created: 2017-01-12T19:28:52.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-01-05T14:33:02.000Z (over 2 years ago)
- Last Synced: 2025-07-27T01:23:52.679Z (11 months ago)
- Topics: gem
- Language: Ruby
- Homepage:
- Size: 13.7 KB
- Stars: 0
- Watchers: 36
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Net::HTTP::Report
HTTP REPORT is a [registered HTTP method](http://www.iana.org/assignments/http-methods/http-methods.xhtml) defined in [RFC 3253](https://tools.ietf.org/html/rfc3253), Section 3.6. This gem adds the `Net::HTTP::Report` class that can be used to build REPORT requests for use with the `net/http` standard library.
## Installation
Add this line to your application's Gemfile:
```ruby
gem 'net-http-report'
```
And then execute:
$ bundle
Or install it yourself as:
$ gem install net-http-report
## Usage
The `Net::HTTP::Report` method behaves similarly to other [`Net::HTTPRequest`](https://ruby-doc.org/stdlib/libdoc/net/http/rdoc/Net/HTTPRequest.html) classes in the [`net/http`](https://ruby-doc.org/stdlib/libdoc/net/http/rdoc/index.html) library. Here's an example of sending a REPORT request with a JSON payload and printing out the response body.
```ruby
require 'net-http-report'
require 'json'
uri = URI('http://www.example.com')
Net::HTTP.start(uri.host, uri.port) do |http|
request = Net::HTTP::Report.new(uri)
request['Content-Type'] = 'application/json'
request.body = { 'ids' => [1, 2, 3] }.to_json
response = http.request(request)
puts response.body
end
```
## Development
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run `bundle exec rake install`.
To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/salsify/net-http-report.
## License
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).