1

我在我的自定义服务中使用kriswallsmith/BuzzSkebby浏览器。这是config.yml,请注意setVerifyPeer(false)禁用 SSL 证书验证的调用:

# cURL client
buzz.client.curl:
    class:  Buzz\Client\Curl
    public: false
    calls:
    - [setVerifyPeer, [false]]

# Buzz browser configured to use cURL client
buzz.browser:
    class:     Buzz\Browser
    arguments: ['@buzz.client.curl']

虽然Skebby它本身是用schmittjoh/JMSDiExtraBundle注释的:

/** @Service("skebby") */
Class Skebby
{
    /**
     * @InjectParams({
     *     "browser"    = @Inject("buzz.browser"),
     *     "translator" = @Inject("translator")
     * })
     *
     * @param \Buzz\Browser $browser
     * @param \Symfony\Bundle\FrameworkBundle\Translation\Translator $translator
     */
    public function __construct(Browser $browser, Translator $translator)
    {
        $this->browser    = $browser;
        $this->translator = $translator;
    }

    public function getCredit()
    {
        var_dump($this->browser->getClient());
        die();
    }
}

不幸的是,调用(在控制器内)$this->get('skebby')->getCredit()显示服务容器发生了问题:

object(Buzz\Client\Curl)[4905]
  private 'lastCurl' => null
  protected 'options' => 
    array (size=0)
      empty
  protected 'ignoreErrors' => boolean true
  protected 'maxRedirects' => int 5
  protected 'timeout' => int 5
  protected 'verifyPeer' => boolean true

verifyPeer仍然是true,因为电话setVerifyPeer(false)从未发生过。我的配置有问题吗?

有用的链接:

4

1 回答 1

2

calls您在指令下有错误的缩进

应该:

buzz.client.curl:
    class:  Buzz\Client\Curl
    public: false
    calls:
        - [setVerifyPeer, [false]]

在您的版本中,它什么都不叫;)

于 2012-07-26T13:05:58.590 回答