angular-http-status

0.1.2 • Public • Published

angular-http-status

Demo: http://yllieth.github.io/angular-http-status/app/index.html

Angular stuff to easily convert status text into its HTTP code and vice versa.

I only care about real Http statuses, so I used the list from http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml where each code is attached to a RFC.

Installation

Bower

bower install angular-http-status --save

Once the lib is downloaded,

  1. add a reference in your index.html

    <script type="application/javascript" src="../bower_components/angular-http-status/angular-http-status.js"></script>

  2. add the module in your angular application

    angular
      .module('YOUR-ANGULAR-APP-NAME', [
        'ngHttpStatus'
      ])
      .config(...
    
  3. enjoy!

Usage

The HttpCodes constant

It's a big object with status text as keys and status codes as values, like:

{
    "CONTINUE": 100,            // RFC7231 @6.2.1 : https://tools.ietf.org/html/rfc7231#section-6.2.1
    "SWITCHING_PROTOCOLS": 101, // RFC7231 @6.2.2 : https://tools.ietf.org/html/rfc7231#section-6.2.2
    "PROCESSING": 102,          // RFC2518        : https://tools.ietf.org/html/rfc2518
    "..."

Once you adds HttpCodes as dependency in a controller / service / ..., you cas use it like:

if (rejection.status === HttpCodes.UNAUTHORIZED) {
  $state.go('login')
}

The HttpStatus factory

Defines the following methods:

  • toString({Number} status) : takes a valid HTTP status code and returns its meaning (undefined if given status isn't in the list)

Example

Here is the code of the controller used for the demo app:

angular
  .module('demo-angular-http-status', ['ngHttpStatus'])
  .controller('demoCtrl', function(HttpCodes, HttpStatus) {

    this.code = 200;
    this.text = 'Ok';

    this.statusCodes = HttpCodes;

    this.toString = function(status) {
      return HttpStatus.toString(status);
    };

    this.toStatus = function(meaning) {
      var statusText = meaning.toUpperCase().replace(' ', '_');

      return angular.isDefined(HttpCodes[statusText])
        ? HttpCodes[statusText]
        : '<< Invalid key ' + statusText + ' >>'
    }
  });

License

DBAD. See the LICENSE for more details.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Readme

Keywords

Package Sidebar

Install

npm i angular-http-status

Weekly Downloads

64

Version

0.1.2

License

MIT

Last publish

Collaborators

  • yllieth