olegopro / imap-php-proxy
dev-main
2022-10-21 22:27 UTC
Requires
This package is auto-updated.
Last update: 2024-09-22 02:36:57 UTC
README
此模块允许通过代理连接到IMAP协议。
优点
- 模块非常灵活,您可以替换任何元素为自定义版本(ResponseContainer、Parser、Commander、实现自己的代理类型)。实现自己的代理类型。
- 实现了Socks5和Https代理。
- 实现了通过代理服务器(Socks5和Https)进行授权。
要在您的项目中使用,请在composer.json中添加以下代码
"repositories": [
{
"type": "vcs",
"url": "https://github.com/olegopro/imap-php-proxy.git"
}
],
"require": {
"olegopro/imap-php-proxy": "dev-master"
}
使用方法
// Этот объект содержит все успешные и ошибочные действия $responseContainer = \ImapConnector\Containers\ResponseContainer::getInstance(); $connector = new \ImapConnector\Connector($responseContainer); // Этот объект предназначен для разбора ответа imap $parser = new \ImapConnector\Parsers\Parser(); // Экземпляр прокси Socks 5 $socks5Proxy = new \ImapConnector\Proxies\Socks5Proxy($responseContainer, "ip", 'port'); // Подключение к прокси (если вы пропустите эту строку, скрипт будет подключаться к imap напрямую, без прокси) $connector->connectToProxy($socks5Proxy); // Здесь мы получаем поток, который идет через прокси (Вы можете использовать этот поток в своем собственном порядк) $stream = $connector->connectToImap("imap_host", 'imap_port', 'proxy_name', 'proxy_pass'); // Здесь мы проверяем, успешно ли мы подключились к imap if(is_resource($stream)) { // Здесь мы создаем обработчик комманд и передаем поток $commander = new \ImapConnector\Commander($stream, $parser, $responseContainer); // Вход через imap if($commander->login("login", "password")){ echo "Success!"; } }