دریافت صفحه HTTP از طریق آداپتر Net::HTTP در Socksify
از آداپتر Net::HTTP در Socksify استفاده کنید، هدف درخواست URL را حفظ کنید و بدنهٔ پاسخ برگشتی را بخوانید.
Socksify آداپتری برای Net::HTTP فراهم میکند. آن آداپتر را بارگذاری کنید و از متد مستندشدهٔ socks_proxy استفاده کنید:
require 'socksify/http'
uri = URI('http://example.com/?view=compact')
Net::HTTP.socks_proxy('127.0.0.1', 1400)
.start(uri.host, uri.port) do |http|
response = http.get(uri.request_uri)
puts response.body
end
درگاه محلی نمونهای از یک نقطهٔ پایانی SOCKS است. برای آزمون مجاز یک وبسایت عمومی از طریق سرویس SOCKS بدون احراز هویت، یک گزینهٔ سازگار از فهرست پروکسیهای SOCKS میتواند جای آن میزبان و درگاه را بگیرد؛ پروتکلی را که آداپتر نصبشده پشتیبانی میکند تطبیق دهید. request_uri مسیر و پرسوجو را حفظ میکند و زمانی که URL مسیر صریحی ندارد یک اسلش اضافه میکند. چاپ خروجی بازرسی شیء پاسخ با خواندن بدنهٔ آن متفاوت است.
شکل بلوکی هنگام پایان بلوک، نشست HTTP را میبندد. این نمونه برای مقصد HTTP است؛ یک کلاینت HTTPS نیز به پیکربندی معمول TLS خود نیاز دارد.
قطعهکدهای قدیمی کارخانه را SOCKSProxy مینویسند. پیادهسازی کنونی پروژه آن را به عنوان نام مستعار نگه میدارد، در حالی که README آن از socks_proxy استفاده میکند. ترکیب نصبشدهٔ Socksify و Ruby را بررسی کنید، زیرا آداپتر با بخشهای درونی Net::HTTP یکپارچه میشود.