aiohttp-socks ସହିତ aiohttp ରେ SOCKS ରାଉଟିଂ
ଅପସାରିତ କନେକ୍ଟର ଶ୍ରେଣୀ ଥିବା ପୁରୁଣା aiohttp ପ୍ରକ୍ସି ଉଦାହରଣ କପି କରିବା ପରିବର୍ତ୍ତେ SOCKS ବୁଝୁଥିବା ସୁସଙ୍ଗତ କନେକ୍ଟର ବ୍ୟବହାର କରନ୍ତୁ।
aiohttp ଏହାର ଅନୁରୋଧ ବିକଳ୍ପ ମାଧ୍ୟମରେ HTTP ପ୍ରକ୍ସି ସମର୍ଥନ ଦଲିଲ କରେ। SOCKS ଅନ୍ତିମ ବିନ୍ଦୁକୁ SOCKS କହୁଥିବା ଏକ କାର୍ଯ୍ୟାନ୍ୱୟନ ଆବଶ୍ୟକ। ପ୍ରକ୍ସି URL ର ପୋର୍ଟକୁ 1080 କରିବା ସେ କାର୍ଯ୍ୟାନ୍ୱୟନ ଦିଏ ନାହିଁ।
async ଫଙ୍କସନ ଭିତରେ, ରକ୍ଷଣାବେକ୍ଷିତ aiohttp-socks ପ୍ରକଳ୍ପ ଦେଉଥିବା କନେକ୍ଟର ବ୍ୟବହାର କରନ୍ତୁ:
import aiohttp
from aiohttp_socks import ProxyConnector
connector = ProxyConnector.from_url('socks5://203.0.113.10:1080')
async with aiohttp.ClientSession(connector=connector) as session:
async with session.get('https://example.com/') as response:
body = await response.read()ଏହା ଅନୁମାନ କରେ ଯେ କନେକ୍ଟର ପ୍ୟାକେଜ ପୂର୍ବରୁ ଉପଲବ୍ଧ ଏବଂ ଆପ୍ଲିକେସନରେ ଥିବା aiohttp ସଂସ୍କରଣ ସହିତ ସୁସଙ୍ଗତ। ଅନ୍ତିମ ବିନ୍ଦୁ ଉଦାହରଣମାତ୍ର; SOCKS5 ପ୍ରକ୍ସି ତାଲିକା କନେକ୍ଟର URL ପାଇଁ ସାର୍ବଜନୀନ ପ୍ରାର୍ଥୀ ଦିଏ। ପ୍ରକୃତ କାର୍ଯ୍ୟଭାର ପାଇଁ ସମୟସୀମା ଏବଂ ପ୍ରତିକ୍ରିୟା-ଆକାର ନୀତି ବିନ୍ୟାସ କରନ୍ତୁ।
ପୁରୁଣା ଉତ୍ତରଗୁଡ଼ିକ ବିଭିନ୍ନ ପ୍ୟାକେଜ ଏବଂ କନେକ୍ଟର ନାମ ଉଲ୍ଲେଖ କରେ: aiosocks, aiosocksy ଏବଂ aiohttp-socks ପରସ୍ପର ବିନିମୟୀ ଆମଦାନୀ ପଥ ନୁହେଁ। ପ୍ରକୃତରେ ବ୍ୟବହୃତ ପ୍ୟାକେଜର ଆବଶ୍ୟକତା ଏବଂ ଉଦାହରଣ ପଢ଼ନ୍ତୁ। ଗୋଟିଏ ପ୍ରକଳ୍ପର ଶ୍ରେଣୀକୁ ଅନ୍ୟର ଆର୍ଗୁମେଣ୍ଟ ସହିତ ମିଶାଇବା କୌଣସି ପ୍ରକ୍ସି ସଂଯୋଗ ଚେଷ୍ଟା ପୂର୍ବରୁ ବିଫଳ ହୋଇପାରେ।
କନେକ୍ଟର ଏବଂ ସେସନର ଆୟୁଷ ଏକାଠି ରଖନ୍ତୁ, ଏବଂ ଯେଉଁଠି ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ ସେଠାରେ ହୋଷ୍ଟନାମ-ସମାଧାନ ଆଚରଣ ଯାଞ୍ଚ କରନ୍ତୁ। SOCKS URL କୁ ଅସମ୍ପର୍କିତ HTTP ପ୍ରକ୍ସି ବିକଳ୍ପକୁ ଦେବା କନେକ୍ଟରର ଦଲିଲିକୃତ ପଥର ବିକଳ୍ପ ନୁହେଁ।