Download the PHP package icanhazstring/expressive-hashids-middleware without Composer
On this page you can find all versions of the php package icanhazstring/expressive-hashids-middleware. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download icanhazstring/expressive-hashids-middleware
More information about icanhazstring/expressive-hashids-middleware
Files in icanhazstring/expressive-hashids-middleware
Package expressive-hashids-middleware
Short Description PSR-15/PSR-7 compliant middleware using ivanakimov/hashids.php
License MIT
Informations about the package expressive-hashids-middleware
icanhazstring/expressive-hashids-middleware
PSR-15/PSR-7 compliant middleware using ivanakimov/hashids.php
Install
You can install the expressive-hashids-middleware library with composer:
Workflow
The main purpose of the middleware is to obfuscate internal IDs from the outside world. That said, you don't have to change your internal id handling (like autoincrement in your db) to use this middleware.
Any incoming request in the form of /api/resource/{id}
will be decoded using this middleware.
So for example (default configuration):
/api/user/ABC
(where ABC
is the encoded value) will produce request attributes like this:
The middleware won't override attributes! You can use the
HashidsMiddleware::ATTRIBUTE
constant to easy access this attribute.
Usage
Using expressive
Include the HashidsConfigProvider
inside your config/config.php
:
Make sure the HashidsConfigProvider
is included before your autoload files!
Custom configuration
If you want to change parameters of Hashids
, simply provide the
HashidsConfigProvider::CONFIG_KEY
inside your autoload configuration and change the values to your desire.
Using the strategy
If you want, you can use the hydration/extraction strategy provided to decode/encode data from and into your objects.
To use the strategy, simply use the provided delegator HashidsHydratorDelegatorFactory
and append
it as delegator for your hydrator.
All versions of expressive-hashids-middleware with dependencies
hashids/hashids Version ^3.0
psr/container Version ^1.0
psr/http-server-middleware Version ^1.0
psr/http-message Version ^1.0
zendframework/zend-hydrator Version ^2.4
icanhazstring/middleware-exceptions Version ^1.0