我在我的自定义服务中使用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)
从未发生过。我的配置有问题吗?
有用的链接:
AbstractClient.php
抽象客户类AbstractCurl.php
cURL 客户端的父类,扩展AbstractClient
Curl.php
类本身,扩展AbstractCurl