Laravel Http Facade 中的 PHP Curl 代理选项

Joh*_*ohn 2 php curl laravel guzzle

我正在使用 Laravel 的 Http 外观来发出请求,例如

Http::withHeaders(['user-agent' => 'My User agent'])->retry(3, 500)->get('https://example.com')->body();
Run Code Online (Sandbox Code Playgroud)

并且需要使用代理,根据代理提供商的示例,在 PHP 的卷曲情况下应该像这样设置

curl_setopt($curl, CURLOPT_PROXY, 'aaa');
curl_setopt($curl, CURLOPT_PROXYUSERPWD, 'xxx:xxx');
Run Code Online (Sandbox Code Playgroud)

这些代理选项可以通过上面的 Laravel 的 Http 类进行设置吗?

Muh*_*kur 6

Http Facade 允许您使用guzzle 选项,并且 guzzle 有代理选项。因此,根据您的代码,您需要这样做:

Http::withHeaders(['user-agent' => 'My User agent'])
->withOptions(['proxy' => 'http://username:password@192.168.16.1:8080'])
->retry(3, 500)
->get('https://example.com')
->body();
Run Code Online (Sandbox Code Playgroud)