Sha256: 61401f7c9e4b5b69d99565a3d2404f6068c9e9ae5b3e8091a61d130e5e6bc588

Contents?: true

Size: 1.5 KB

Versions: 21

Compression:

Stored size: 1.5 KB

Contents

= JSON::JWT

JSON Web Token and its family (JSON Web Signature, JSON Web Encryption and JSON Web Key) in Ruby

== Installation

  gem install json-jwt

== Resources

* View Source on GitHub (https://github.com/nov/json-jwt)
* Report Issues on GitHub (https://github.com/nov/json-jwt/issues)

== Examples

=== Encoding

  require 'json/jwt'

  claim = {
    iss: 'nov',
    exp: 1.week.from_now,
    nbf: Time.now
  }

  # No signature, no encryption
  JSON::JWT.new(claim).to_s

  # With signiture, no encryption
  JSON::JWT.new(claim).sign(key, algorithm).to_s

  # With signature & encryption
  JSON::JWT.new(claim).sign(key, algorithm).encrypt(key, algorithm).to_s

For details about <code>key</code> and <code>algorithm</code>, see {JWS Spec}[https://github.com/nov/json-jwt/blob/master/spec/json/jws_spec.rb] and {Sign Key Fixture Generator}[https://github.com/nov/json-jwt/blob/master/spec/helpers/sign_key_fixture_helper.rb].

=== Decoding

  jwt_string = "jwt_header.jwt_claims.jwt_signature"

  JSON::JWT.decode(jwt_string, key)

== Note on Patches/Pull Requests
 
* Fork the project.
* Make your feature addition or bug fix.
* Add tests for it. This is important so I don't break it in a
  future version unintentionally.
* Commit, do not mess with rakefile, version, or history.
  (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
* Send me a pull request. Bonus points for topic branches.

== Copyright

Copyright (c) 2011 nov matake. See LICENSE for details.

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
json-jwt-0.0.5 README.rdoc