在軟體開發中,代理就像是一個“中間人”,它幫我們控制對某個功能或資源的訪問。使用代理可以實現許可權檢查、記錄動作記錄、快取資料、消極式載入等功能,而不用改動原來的代碼。這樣可以讓程式更安全、運行更快,也更容易維護和擴充。本文為您介紹V2.0 PHP SDK代理的配置方式。
代理類型
支援使用HTTP代理和HTTPS代理。
代理類型 | 描述 |
HTTP代理 | 通過參數 |
HTTPS代理 | 通過參數 |
說明
若Proxy 伺服器要求身份認證才能進行訪問,請在IP地址前添加Proxy 伺服器配置的使用者名稱和密碼,格式為:http://<user>:<password>@<IP地址>:<連接埠>或socks5://<user>:<password>@<IP地址>:<連接埠>。
此外,在配置代理後,也可通過參數noProxy指定無需通過代理訪問的地址清單,多個地址之間用逗號分隔,支援網域名稱和IP地址格式。
代理配置方式
說明
代理配置優先順序:RuntimeOptions配置 -> Config配置,優先順序依次降低。
通過
AlibabaCloud\Tea\Utils\Utils\RuntimeOptions類為當前請求配置代理。use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions; // 運行時參數設定,僅對使用了該運行時參數的請求有效 $runtime = new RuntimeOptions([ "httpProxy" => "http://127.0.0.1:8080", "httpsProxy" => "https://username:password@proxyServer:port", "noProxy" => "127.0.0.1,localhost" ]);通過
Darabonba\OpenApi\Models\Config類為所有請求配置代理。use Darabonba\OpenApi\Models\Config; $config = new Config([ "protocol" => 'https', // 請求協議與HTTP代理配置參數有關,httpsProxy僅對https協議有效,httpProxy僅對http協議有效。 // 代理設定 "httpProxy" => "http://127.0.0.1:8080", "httpsProxy" => "https://username:password@proxyServer:port", "noProxy" => "127.0.0.1,localhost" ]);
相關文檔
代理配置相關實踐文檔,請參見HTTP代理配置實踐。