将Payum包与symfony2
一起使用,我有一个共同点unable to verify ssl certificate
错误。
通过更改curl
中的php.ini
选项或在我的PHP代码中设置curl
选项,我无法摆脱它。
但是,修改vendor/kriswallsmith/buzz/lib/Buzz/Client/AbstractClient.php
类并将默认的$verifyPeer
选项设置为false
最终使我可以在本地使用Payum和PayPal Express Checkout。
编辑:
我也可以重写使用其他类的此类。我觉得比较安全:
供应商/ payum /核心/Payum/Core/Bridge/Buzz/ClientFactory.php
如何覆盖此类(理想情况下,即有条件地,即在本地工作时处于开发模式)?
最佳答案
您可以覆盖服务payum.buzz.client
。只需在您在PayumBundle之后注册的包中定义它即可。
<service id="payum.buzz.client" class="Buzz\Client\ClientInterface" factory-class="Payum\Core\Bridge\Buzz\ClientFactory" factory- method="createCurl">
<call method="setVerifyPeer">
<argument>false</argument>
</call>
</service>
或yml
services:
payum.buzz.client:
class: Buzz\Client\ClientInterface
factory_class: Payum\Core\Bridge\Buzz\ClientFactory
factory_method: createCurl
calls:
- [setVerifyPeer, [false]]