1

カスタムサービス内でkriswallsmith/Buzzブラウザを使用していますSkebby。これが、 SSL証明書の検証を無効にするconfig.ymlための呼び出しに注意してください。setVerifyPeer(false)

# 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はまだです。構成に問題がありますか?truesetVerifyPeer(false)

便利なリンク:

4

1 に答える 1

2

callsディレクティブの下で間違ったインデントがあります

する必要があります:

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

あなたのバージョンでは何も呼び出さない;)

于 2012-07-26T13:05:58.590 に答える