美文网首页
PHP curl http 请求封装 (全) Composer

PHP curl http 请求封装 (全) Composer

作者: Ethansmart | 来源:发表于2018-10-06 20:00 被阅读0次
    composer 安装:composer require ethansmart/httpbuilder
    github 地址:https://github.com/roancsu/httpbuilder
    

    在PHP 框架中可以使用 guzzlehttp 来构建HTTP Request 服务,但是guzzle 太重了,用起来比较繁琐,所以我用curl封装了PHP HTTP Request Client,支持 GET,POST,PUT,DELETE 方法,并且对文件上传有安全检测功能等等,使用也非常简单,效率高。

    Usage:

    构建 HttpClient

    protected $client ;
    function __construct()
    {
        $this->client = HttpClientBuilder::create()->build();
    }
    
    

    GET Request

    $data = [
        'uri'=>'https://www.baidu.com'
    ];
    
    return $this->client
        ->setHeaders('Content-Type:application/json')
        ->setHeaders('X-HTTP-Method-Override:GET')
        ->setHeaders('Request_id: Ethan')
        ->setTimeout(10)
        ->Get($data);
    

    POST Request

    
    $data = [
        'uri'=>'https://www.baidu.com',
        'params'=> [
            'user'=>ethan
         ]
    ];
    
    return $this->client
        ->setHeaders('Content-Type:application/json')
        ->Post($data);
    

    PUT 、DELETE Request

    
    $data = [
        'uri'=>'https://www.baidu.com',
        'params'=> [
            'user'=>ethan
         ]
    ];
    
    return $this->client
        ->setHeaders('Content-Type:application/json')
        ->Put($data); // Delete($data)
    

    扩展
    文件上传

    Q:

    在使用 composer 安装过程中会出现 如下异常:

    [InvalidArgumentException]

    Could not find a version of package ethansmart/es-for-laravel matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability.

    解决方法:

    在项目composer.json文件中加入:

    
    "repositories": [
    
            {
    
                "packagist.org": false
    
            },
    
            {
    
                "type": "composer",
    
                "url": "https://packagist.org"
    
            }
    
        ],
    
    

    将国内的composer镜像换成 packagist.org 就可以了。

    相关文章

      网友评论

          本文标题:PHP curl http 请求封装 (全) Composer

          本文链接:https://www.haomeiwen.com/subject/hwohaftx.html