Skip to content

0length/graphql-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graphql-Client is a graphql client package for Laravel that you can use to consume Graphql API.

How to use

This package is installed via Composer. To install, simply add it to your composer.json file:

{
    "require": {
        "0length/graphql-client": "^2.0"
    }
}

and run composer to update the dependencies composer update.

Then open your Laravel config file config/app.php and in the $providers array add the service provider for this package.

\Zerolength\Graphql\GraphqlServiceProvider::class

Generate the configuration file running in the console:

php artisan vendor:publish --tag=config

Finally add your graphql server endpoint url and headers option as following example below:

GRAPHQL_WORKSPACE="http://127.0.0.1:4001/graphql"
GRAPHQL_HEADERS="Authorization: App keyxxx,Header2: value"

Example Query Class Creation

<?php

namespace App\Graphql\Queries;

use Zerolength\Graphql\Entities\GraphqlQueries;
use App\Models\User;

class CSQueries extends GraphqlQueries
{


    /**
     * Generate privately subscription session key for User.
     */
    public function createSession(User $user)
    {
        $this->setPayload(
            __FUNCTION__,
            [
                'data' => $user
            ],
            '
                query ' . __FUNCTION__ . 'Operation($data: SessionDataInput!){
                    ' . __FUNCTION__ . '(data: $data)
                }
            '
        );
        return $this->execute();
    }
}

Example Query Class Call/Usage

$sessionCreationResponse = (new CSQueries())->createSession($user);

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages