proxy-auto-ts
Version:
A comprehensive TypeScript library for automatic proxy management with validation, rotation, and intelligent selection
41 lines ⢠1.61 kB
JavaScript
import { ProxyManager } from "./lib.js";
// Fast test with aggressive timeouts
async function fastTest() {
console.log("ā” Fast Proxy Test");
const proxyManager = new ProxyManager({
timeout: 2000, // 2 seconds
validationTimeout: 1000 // 1 second
});
await proxyManager.initialize();
const proxyCount = await proxyManager.getProxyCount();
console.log(`š Loaded ${proxyCount} proxies`);
try {
console.log(`\nš Testing first 5 proxies quickly...`);
const result = await proxyManager.fetchWithProxy("https://httpbin.org/ip", 5);
console.log(`ā
Working proxy found: ${result.proxy}`);
console.log(`š Your IP: ${JSON.stringify(result.data)}`);
console.log(`ā±ļø Latency: ${result.latency}ms`);
// Test stats
const stats = await proxyManager.getStats();
console.log(`\nš Stats: ${stats.totalProxies} proxies from ${stats.proxyListPath}`);
}
catch (error) {
console.log(`ā ļø No working proxies found in first 5 attempts`);
console.log(`Error: ${error.message}`);
}
console.log(`\nš Fast test completed!`);
}
// Run with timeout
const timeoutPromise = new Promise((_, reject) => {
setTimeout(() => reject(new Error('Test timeout after 30 seconds')), 30000);
});
Promise.race([fastTest(), timeoutPromise])
.then(() => {
console.log(`\nā
Fast test completed successfully!`);
process.exit(0);
})
.catch((error) => {
console.error(`\nā Fast test failed:`, error.message);
process.exit(1);
});
//# sourceMappingURL=fast-test.js.map