TGViewer
DotNet | دات نت DotNet | دات نت @dotnetcode · 1.21K subscribers
Post #901 191
❇️استفاده از پروکسی داخل پروژه های دات نت Framework Full
https://goo.gl/4JbeYW

خب وقتی پروکسی سرور خودتون رو راه انداختین باید کاری کنین که تمام درخواست های وبسایت شما (مثلا درخواست ارسال نوتیفیکشن تلگرام) از طریق پروکسی سرور شما ارسال بشه نه توسط خود وبسایتتون (یعنی Default Proxy پروژه تون رو عوض کنین)

تو NetFramework Full به صورت زیر عمل میکردیم
WebRequest.DefaultWebProxy = new WebProxy("http://127.0.0.1:9050", BypassOnLocal: true) { UseDefaultCredentials = true };

- فیلد BypassOnLocal مشخص میکنه که درخواست های local (محلی) از طریق پروکسی عبور نکنه و مستقیما ارسال بشه.

- توسط خاصیت BypassList و BypassArrayList میشه لیستی از ادرس هایی رو مشخص کرد که برای درخواست اونها اون ها پروکسی استفاده نشه.

- خاصیت UseDefaultCredentials مشخص میکنه که از Credentials پیشفرض استفاده کنه که در حالت عادی یعنی Username و Password جهت احراز هویت پروکسی سرور ارسال نمیشه.

- اگه پروکسی سروو شما دارای Username و Password باشه باید اون رو داخل خاصیت Credentials شی WebProxy ست کنین.

WebRequest.DefaultWebProxy = new WebProxy("http://127.0.0.1:9050", BypassOnLocal: true) { Credentials = new NetworkCredential("username", "password") };

ست کردن مقدار WebRequest.DefaultWebProxy باعث میشه پروکسی پیشفرض پروژه تغییر کنه و از این به بعد تمام درخواست ها (به جز Local به دلیل Bypass در این مثال) از طریق پروکسی ارسال و دریافت بشه.

همچنین مشابه تنظیمات بالا رو میتونین از طریق WebConfig به صورت زیر انجام بدین
<configuration>
<system.net>
<defaultProxy>
<proxy proxyaddress="http://127.0.0.1:9050" bypassonlocal="true" usesystemdefault="true"/>
</defaultProxy>
</system.net>
</configuration>

اما این روش (DefaultProxy) باعث میشه درخواست های کل سیستم از طریق پروکسی ارسال و دریافت بشه
درصورتی که نیاز دارین فقط برای یک درخواست خاص (مثل ارسال نوتیفیکیشن توسط api تلگرام) از پروکسی استفاده کنین و نه تمام درخواست ها
باید به صورت زیر عمل کنین
WebProxy proxy = new WebProxy("http://127.0.0.1:9050",true);
WebRequest request = WebRequest.Create("http://www.contoso.com");
request.Proxy = proxy;


_______________
More from @dotnetcode
  1. Sep 16, 2026ورک‌شاپ «AI Agents in C# (MAF)» در این ورک‌شاپ به بررسی امکانات جدید برنامه‌نویسی با کتابخ…
  2. Jul 10, 2026#مهندس_فکر_کن قسمت:4️⃣ 🎯مصاحبه‌کننده: ءCache Stampede چیست؟ فرض کن یک کلید در Cache داری:…
  3. Jun 12, 20261. Indexes منابع پیشنهادی این چالش که برای من اینها جذاب بوده و هست. A. Designing Data-Int…
  4. Jun 9, 2026آینده هوش مصنوعی و مهندسی کامپیوتر هوش مصنوعی مهندسی را نابود نمی‌کند، اما در سکوت در حال…
  5. Jun 4, 2026تحولی بزرگ در دنیای سی‌شارپ: ویژگی هیجان‌انگیز Union Types در C# 15! بالاخره یکی از جذاب‌ت…
  6. Feb 8, 2026👩‍💻 پستگرس رو ۲.۵ برابر سریع‌تر کن! تصور کن مغز متفکر دیتابیست (Parser) رو بدی دست هوش م…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →