Επισκόπηση

Απαιτήσεις

  1. PHP 7.2.5
  2. Για να χρησιμοποιήσετε τον χειριστή ροής PHP, allow_url_fopen πρέπει να είναι ενεργοποιημένο στο αρχείο σας php.ini του συστήματός σας.
  3. Για να χρησιμοποιήσετε τον χειριστή cURL, πρέπει να έχετε μια πρόσφατη έκδοση του cURL >= 7.19.4 μεταγλωττισμένη με OpenSSL και zlib.

Σημείωση

Το Guzzle δεν απαιτεί πλέον το cURL για την αποστολή αιτήσεων HTTP. Το Guzzle θα χρησιμοποιήσει το PHP stream wrapper για την αποστολή αιτημάτων HTTP, εάν δεν είναι εγκατεστημένο το cURL. Εναλλακτικά, μπορείτε να παρέχετε το δικό σας χειριστή HTTP που χρησιμοποιείται για την αποστολή αιτημάτων. Λάβετε υπόψη ότι το cURL εξακολουθεί να απαιτείται για την αποστολή ταυτόχρονων αιτημάτων.

Εγκατάσταση

Ο συνιστώμενος τρόπος για να εγκαταστήσετε το Guzzle είναι με Composer. Το Composer είναι ένα εργαλείο διαχείρισης εξαρτήσεων για την PHP που σας επιτρέπει να δηλώσετε τις εξαρτήσεις που χρειάζεται το έργο σας και να τις εγκαθιστά στο έργο σας.

# Install Composer
curl -sS https://getcomposer.org/installer | php

Μπορείτε να προσθέσετε το Guzzle ως εξάρτηση χρησιμοποιώντας το Composer:

composer require guzzlehttp/guzzle:^7.0

Εναλλακτικά, μπορείτε να καθορίσετε το Guzzle ως εξάρτηση στο υπάρχον αρχείο composer.json του έργου σας:

 {
   "require": {
      "guzzlehttp/guzzle": "^7.0"
   }
}

Μετά την εγκατάσταση, πρέπει να απαιτήσετε τον αυτόματο φορτωτή του Composer:

require 'vendor/autoload.php';

Μπορείτε να μάθετε περισσότερα για το πώς να εγκαταστήσετε το Composer, να ρυθμίσετε την αυτόματη φόρτωση και άλλες βέλτιστες πρακτικές για τον ορισμό εξαρτήσεων στο getcomposer.org.

Αιμορραγία

Κατά τη διάρκεια της ανάπτυξής σας, μπορείτε να συμβαδίζετε με τις τελευταίες αλλαγές στο master branch θέτοντας την απαίτηση έκδοσης για το Guzzle σε ^7.0@dev.

{
   "require": {
      "guzzlehttp/guzzle": "^7.0@dev"
   }
}

Άδεια

Με άδεια χρήσης MIT license.

Copyright (c) 2015 Michael Dowling <https://github.com/mtdowling>,

Με το παρόν χορηγείται δωρεάν άδεια σε κάθε πρόσωπο που αποκτά αντίγραφο αυτού του λογισμικού και των σχετικών αρχείων τεκμηρίωσης (το "Λογισμικό"), να ασχολείται στο Λογισμικό χωρίς περιορισμούς, συμπεριλαμβανομένων, χωρίς περιορισμό, των δικαιωμάτων χρήσης, αντιγραφής, τροποποίησης, συγχώνευσης, δημοσίευσης, διανομής, υποαδειοδότησης και/ή πώλησης αντιγράφων του Λογισμικού, και να επιτρέπει σε πρόσωπα στα οποία το Λογισμικό να το πράξουν, υπό τους ακόλουθους όρους:

Η παραπάνω ειδοποίηση για τα πνευματικά δικαιώματα και η παρούσα ειδοποίηση για την άδεια χρήσης πρέπει να περιλαμβάνονται σε όλα τα αντίγραφα ή ουσιώδη τμήματα του Λογισμικού.

ΤΟ ΛΟΓΙΣΜΙΚΌ ΠΑΡΈΧΕΤΑΙ "ΩΣ ΈΧΕΙ", ΧΩΡΊΣ ΕΓΓΎΗΣΗ ΟΠΟΙΟΥΔΉΠΟΤΕ ΕΊΔΟΥΣ, ΡΗΤΉ Ή ΣΙΩΠΗΡΉ, ΣΥΜΠΕΡΙΛΑΜΒΑΝΟΜΈΝΩΝ, ΕΝΔΕΙΚΤΙΚΆ, ΤΩΝ ΕΓΓΥΉΣΕΩΝ ΕΜΠΟΡΕΥΣΙΜΌΤΗΤΑΣ, ΚΑΤΑΛΛΗΛΌΤΗΤΑ ΓΙΑ ΣΥΓΚΕΚΡΙΜΈΝΟ ΣΚΟΠΌ ΚΑΙ ΜΗ ΠΑΡΑΒΊΑΣΗ. ΣΕ ΚΑΜΊΑ ΠΕΡΊΠΤΩΣΗ ΤΟ ΣΥΓΓΡΑΦΕΊΣ Ή ΟΙ ΚΆΤΟΧΟΙ ΠΝΕΥΜΑΤΙΚΏΝ ΔΙΚΑΙΩΜΆΤΩΝ ΕΥΘΎΝΟΝΤΑΙ ΓΙΑ ΟΠΟΙΑΔΉΠΟΤΕ ΑΞΊΩΣΗ, ΖΗΜΊΑ Ή ΆΛΛΗ ΕΥΘΎΝΗ, ΕΊΤΕ ΜΕ ΑΓΩΓΉ ΣΥΜΒΟΛΑΊΟΥ, ΕΊΤΕ ΜΕ ΑΔΙΚΟΠΡΑΞΊΑ, ΕΊΤΕ ΜΕ ΆΛΛΟ ΤΡΌΠΟ, ΠΟΥ ΑΠΟΡΡΈΕΙ ΑΠΌ, ΑΠΌ Ή ΣΕ ΣΧΈΣΗ ΜΕ ΤΟ ΛΟΓΙΣΜΙΚΌ Ή ΤΗ ΧΡΉΣΗ Ή ΆΛΛΕΣ ΣΥΝΑΛΛΑΓΈΣ ΣΕ ΑΥΤΌ. ΤΟ ΛΟΓΙΣΜΙΚΟ.

Συνεισφορά

Οδηγίες

  1. Το Guzzle χρησιμοποιεί τα PSR-1, PSR-2, PSR-4 και PSR-7.
  2. Το Guzzle προορίζεται να είναι λιτό και γρήγορο με πολύ λίγες εξαρτήσεις. Αυτό σημαίνει ότι δεν θα γίνει δεκτή κάθε αίτηση για κάποιο χαρακτηριστικό.
  3. Το Guzzle απαιτεί ως ελάχιστη έκδοση PHP την PHP 7.2. Τα αιτήματα μετακίνησης πρέπει να να μην απαιτούν έκδοση PHP μεγαλύτερη από την PHP 7.2, εκτός αν η λειτουργία είναι μόνο χρησιμοποιείται μόνο υπό όρους και το αρχείο μπορεί να αναλυθεί από την PHP 7.2.
  4. Όλες οι αιτήσεις για pull πρέπει να περιλαμβάνουν δοκιμές μονάδας για να διασφαλιστεί ότι η αλλαγή λειτουργεί όπως αναμενόμενη και για να αποφευχθούν παλινδρομήσεις.

Εκτέλεση των δοκιμών

Για να συνεισφέρετε, θα πρέπει να ελέγξετε τον πηγαίο κώδικα από το GitHub και να εγκαταστήσετε τις εξαρτήσεις του Guzzle χρησιμοποιώντας το Composer:

git clone https://github.com/guzzle/guzzle.git
cd guzzle && composer install

Το Guzzle δοκιμάζεται με το PHPUnit. Εκτελέστε τις δοκιμές χρησιμοποιώντας το Makefile:

make test

Σημείωση

Θα χρειαστεί να εγκαταστήσετε το node.js v8 ή νεότερο για να εκτελέσετε την ενσωμάτωση δοκιμές στους χειριστές HTTP του Guzzle.

Αναφορά ευπάθειας ασφαλείας

Θέλουμε να διασφαλίσουμε ότι το Guzzle είναι μια ασφαλής βιβλιοθήκη-πελάτης HTTP για όλους. Αν έχετε ανακαλύψει μια ευπάθεια ασφαλείας στο Guzzle, εκτιμούμε τη βοήθειά σας στην αποκάλυψή της σε εμάς με υπεύθυνο τρόπο.

Η δημόσια αποκάλυψη μιας ευπάθειας μπορεί να θέσει ολόκληρη την κοινότητα σε κίνδυνο. Εάν το έχετε ανακαλύψει μια ανησυχία ασφάλειας, στείλτε μας email στη διεύθυνση security@guzzlephp.org. Θα συνεργαστούμε μαζί σας για να βεβαιωθούμε ότι καταλαβαίνουμε την το εύρος του προβλήματος και ότι θα αντιμετωπίσουμε πλήρως την ανησυχία σας. Θεωρούμε ότι την αλληλογραφία που αποστέλλεται στο security@guzzlephp.org ως ύψιστη προτεραιότητά μας και εργαζόμαστε για να να αντιμετωπίσουμε τυχόν προβλήματα που προκύπτουν το συντομότερο δυνατό.

Μετά τη διόρθωση μιας ευπάθειας ασφαλείας, θα αναπτυχθεί το συντομότερο δυνατό μια έκδοση άμεσης διόρθωσης ασφαλείας.