brunopicci/services-bundle

此包实现了一个调用REST API的服务

安装: 22

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 0

语言:HTML

类型:symfony-bundle

1.4.0 2018-02-05 12:56 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License Monthly Downloads Daily Downloads composer.lock

ServicesBundle

此包实现了一个调用REST API的服务。功能包括

  • 调用REST API并接收解码为数组的JSON
  • 调用REST API并接收未解码的JSON
  • 可以自动传递HTTP动词和JSON作为参数,它会自动发出请求

注意

该包已发布并可使用。然而,它仍在积极开发中。

文档

此包允许调用REST API并提供一个具有基本配置的实体以返回JSON。

要使用此包,首先必须使用DI(依赖注入)中的服务,如下所示

$apiRest = $this->get('services.chiamatarest');

然后您可以对该服务进行设置。默认情况下,服务将搜索REST API的JSON响应中的“message”字段,该字段包含调用结果消息,以及名为“success”的字段,用于调用结果(true或false)。如果这不满足您的需求,您可以更改该名称如下

对于消息字段

$apiRest->setNomeCampoMessage("<your-field-name>");

对于成功字段

$apiRest->setNomeCampoSuccess("<your-field-name>");

您还可以决定不测试特定字段,通过设置此选项

$apiRest->setControlSuccess(false);

默认为true。

然后,您可以进行其他设置,例如

设置调用日志的项目

$apiRest->setChiamante("<your-application>");

设置HTTP动词

$apiRest->setTipoChiamata("<http-verb");

设置要调用的URL

$apiRest->setUrl("<api-rest-url>");

您可以将JSON输入传递过去,目前只有POST、PUT和GET HTTP动词接受JSON输入。您可以这样做

$apiRest->setJson("<your-json>");

对于每个请求,服务都会测试返回的HTTP状态码。如果收到200、201或202,则一切正常。在其他情况下,它将引发一个需要捕获的异常。

现在您可以通过数组接收API请求,如下所示

$returnJsonAarray=$apiRest->chiamataRestDecodificata();

或者您可以通过只接收JSON进行API请求,如下所示

$returnJson=$apiRest->chiamataRest();

您可以通过这种方式查看请求返回的HTTP状态码

$returnHttpCode=$apiRest->getHttpcode();

安装

步骤1:下载包

打开命令行控制台,进入您的项目目录,并执行以下命令以下载此包的最新稳定版本

$ composer require brunopicci/call-rest-api

此命令需要您已全局安装Composer,如Composer文档中的安装章节中所述。

步骤2:启用包

然后,通过将其添加到项目app/AppKernel.php文件中注册的包列表来启用该包

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new Services\Bundle\Rest\ServicesRestBundle(),
        );

        // ...
    }

    // ...
}

在config.yml中导入包的services.yml

imports:
    ...
    - { resource: "@ServicesRestBundle/Resources/config/services.yml" }

许可

此包采用MIT许可。