Download the PHP package kielabokkie/laravel-apise without Composer

On this page you can find all versions of the php package kielabokkie/laravel-apise. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

All versions of laravel-apise with dependencies

Informations about the package laravel-apise

Apise for Laravel

Author Build Packagist Version Coverage

Apise for Laravel can be used to simplify creating an API service for integrating with an external JSON API. It also comes with an optional UI to view request and response data of your API services.

Requirements

Note: Laravel 8 requires PHP 7.3

Installation

Install the package via composer:

After the package is installed, you'll need to publish its assets:

Run the migrations to setup the table used for logging:

Updating Apise

When there is a new version of Apise always publish the assets with the command below to ensure you have the lastest Javascript and other assets.

Package configuration

The configuration of the package can be found at config/apise.php. Below are the contents of the config file:

Logging

By default logging of all requests is enabled. This will give you a page under /apise where you can inspect request and response data. There will be some overhead when logging is enabled as records are saved to the database. To disable logging add the following to your .env file:

Apise UI

As mentioned before the UI of Apise can be accessed via /apise. If you would like to change this you can do so by setting the following environment variable:

Conceal sensitive data

You probably don't want sensitive data to be stored in your database so Apise will make it easy for us to conceal this kind of data. In the background Apise uses the kielabokie/laravel-conceal package to automatically conceal sensitive headers and request data. By default the package conceals the values of password and password_confirmation fields but you can add any keys you want to the conceal_keys array in the apise.php config file:

Setup

To make use of the base API Client class you'll need to add the required $baseUrl to set the base URL of your API. You'll also have to call the $this->setClient(); function in the constructor of your service class.

To make it easy to get started you can use the following command to scaffold your API Service class:

This will create a class called HttpBinService.php in the app/Support/Services folder. All you have to do is set your $baseUrl and you are good to go.

Note: If you would like your classes to be placed somewhere else you can overwrite the namespace variable in the apise.php config file.

Usage

Get request

Now to execute a GET request you can simply do the following:

This is pretty basic stuff and the same as you would normally do a GET request with Guzzle.

Adding default headers

APIs often require you to add a specific header to every request, for example for authorisation purposes. Instead of having to pass that as an option with every request you can add the following function at the top of your service class:

Adding default query parameters

You can add default query parameters to every request automatically in a similar way:

This will automatically append the token as a get parameter like so: https://httpbin.org/get?token=your-token.

Purge logs

Depending on how many calls your API service is doing the logs table can quickly fill up. You can run the prune command to remove any logs older than the given number of hours:

To automatically prune old logs you can add it to the Laravel scheduler app/Console/Kernel.php, for example:

Credits

This package borrowed a lot of its general structure from the laravel/telescope package. All credit goes to the original authors.

Development

When working on the view that shows the logs you can run the Webpack dev server:

This will run the dev server on http://127.0.0.1:8080 with hot reload enabled.


Version
Requires php Version ^7.2
guzzlehttp/guzzle Version ^6.3|^7.0
rtheunissen/guzzle-log-middleware Version ^0.4.2|^1.0
ramsey/uuid Version ^3.9|^4.0
kielabokkie/laravel-conceal Version ^1.1

The package kielabokkie/laravel-apise contains the following files

Loading the files please wait ....