CakePHP HTTP客户端默认代理设置

时间:2017-09-05 14:37:53

标签: php http cakephp proxy cakephp-3.0

我的应用程序在代理工作时运行。为了使CakePHP HTTP客户端工作,我必须传递我的代理设置。每次创建新的HTTP客户端时,我都会传递代理设置。

$http = new Client([
      "proxy" => [
        "proxy" => "MYPROXYURL",
        "username" => "MYUSERNAME",
        "password" => "MYPASSWORD"
      ]
]);

有没有办法让这些设置成为默认设置,这样我可以让我的代码更干?我希望这可以在引导程序设置中完成,但如果必须,我可以扩展Cake\Http\Client类并使用自定义包装器。如果我这样做,哪个文件夹最好放入我的自定义Cake类?

1 个答案:

答案 0 :(得分:0)

创建自己的客户端类YourClient extends Client。然后将配置直接放入$_defaultConfig或在构造函数中放置Configure::read('App.http.client'),并从配置中读取代理值。

namespace App\Http;

use Cake\Http\Client as CakeClient;

class Client extends CakeClient { /*...*/ }

然后实例化你自己的类,而不是你不知道的核心类。