Changing guzzle adapter options

Ouverte
#85 0 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
42/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
php
Domaine
api

Piste de recherche

Localisez le constructeur du client API et la création du client Guzzle présentée dans l’issue. Examinez la manière dont son URI de base et ses en-têtes sont actuellement configurés, puis déterminez quelle forme d’option proposée convient à l’API publique existante. La tâche est terminée lorsque les appelants peuvent configurer le fichier CA ou d’autres options Guzzle sans modifier php.ini ni les paramètres d’environnement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

I've come across this issue while testing your api. Guzzle throws an exception complaining there's no ca file on a windows box. For those OS' without a default known ca file, see guzzle verify, it is not possible to set a default ca-file without altering the php.ini or PATH environment. To solve this issue,

Either

//to set options to the guzzle client
public getClient() { return $this->client; }

Or

public function __construct(Auth $auth, string $baseURI = null, $guzzleConfig = [])
{
    if ($baseURI === null) {
        $baseURI = 'https://api.cloudflare.com/client/v4/';
    }

    $headers = $auth->getHeaders();

    $config = [
        'base_uri' => $baseURI,
        'headers' => $headers,
        'Accept' => 'application/json'
    ] + $guzzleConfig;

    $this->client = new Client($config);
}    

Or

public function __construct(Auth $auth, string $baseURI = null, $caFile = false)
{
    if ($baseURI === null) {
        $baseURI = 'https://api.cloudflare.com/client/v4/';
    }

    $headers = $auth->getHeaders();

    $config = [
        'base_uri' => $baseURI,
        'headers' => $headers,
        'Accept' => 'application/json'
    ];

    if ($caFile !== false) $config['verify'] = $caFile;

    $this->client = new Client($config);
} 

can be done.

Langage dominant
PHP
Étoiles
674
Forks
266
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de cloudflare/cloudflare-php

Toutes les issues de cloudflare/cloudflare-php

Issues similaires

Plus d'issues PHP

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.