البرمجة

تكوين بروكسي مع مصادقة في OkHTTPClient في برمجة تطبيقات Android

عند التعامل مع تكنولوجيا الشبكات في برمجة تطبيقات Android باستخدام مكتبة OkHTTPClient، قد يواجه المطورون بعض التحديات في إعداد البروكسي بالتحقق. يعتبر البروكسي هو نقطة التوسط التي تتيح لتطبيقك التواصل بشكل غير مباشر مع الخوادم عبر الإنترنت، وإذا كانت هناك حاجة للمصادقة على البروكسي، يصبح من الضروري تضمين بيانات اعتماد معينة.

لتحقيق ذلك باستخدام OkHTTPClient، يمكنك تعيين البروكسي عبر الطريقة proxy المتاحة في OkHttpClient.Builder، ولكن يجب عليك أيضًا توفير بيانات المصادقة. في الشيفرة التي قدمتها، تم استخدام بنية تحمل اسم “Basic” لتمرير بيانات اعتماد المستخدم.

لتكوين البروكسي، يمكنك استخدام الكود التالي كمثال:

java
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("your_proxy_ip", your_proxy_port)); Authenticator proxyAuthenticator = (route, response) -> { String credential = Credentials.basic("your_username", "your_password"); return response.request().newBuilder() .header("Proxy-Authorization", credential) .build(); }; OkHttpClient client = new OkHttpClient.Builder() .proxy(proxy) .proxyAuthenticator(proxyAuthenticator) .connectTimeout(60, TimeUnit.SECONDS) .writeTimeout(60, TimeUnit.SECONDS) .readTimeout(60, TimeUnit.SECONDS) .build();

يرجى استبدال “your_proxy_ip” و”your_proxy_port” و”your_username” و”your_password” بقيم فعلية. يقوم الكود بإنشاء كائن Proxy ويعينه كبروكسي لـ OkHttpClient.Builder، ثم يقوم بتعيين مصادق البروكسي باستخدام proxyAuthenticator الذي يستخدم بيانات المصادقة.

من ثم، يمكنك استخدام client المكون لإرسال طلبات HTTP عبر البروكسي بشكل آمن وفعّال. يتيح لك هذا الأسلوب السيطرة الكاملة على تكوين البروكسي وتوفير بيانات المصادقة اللازمة للاتصال بشكل صحيح وآمن.

المزيد من المعلومات

فيما يلي شرح أكثر تفصيلاً حول الكود الذي تم توفيره لتكوين بروكسي مع مصادقة في OkHTTPClient:

  1. Proxy Type و InetSocketAddress:

    • تم استخدام Proxy.Type.HTTP للإشارة إلى أن البروكسي يدعم HTTP.
    • InetSocketAddress يحدد عنوان IP ورقم المنفذ للبروكسي.
    java
    Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("your_proxy_ip", your_proxy_port));
  2. Proxy Authenticator:

    • تم استخدام Authenticator لتوفير مصادقة البروكسي.
    • يتم تحديد proxyAuthenticator بواسطة واجهة Authenticator باستخدام لامبدا (Lambda expression).
    java
    Authenticator proxyAuthenticator = (route, response) -> { String credential = Credentials.basic("your_username", "your_password"); return response.request().newBuilder() .header("Proxy-Authorization", credential) .build(); };
  3. Configuring OkHttpClient:

    • يتم بناء OkHttpClient باستخدام OkHttpClient.Builder.
    • تم تعيين البروكسي ومصادقه باستخدام الطرق proxy و proxyAuthenticator على التوالي.
    java
    OkHttpClient client = new OkHttpClient.Builder() .proxy(proxy) .proxyAuthenticator(proxyAuthenticator) .connectTimeout(60, TimeUnit.SECONDS) .writeTimeout(60, TimeUnit.SECONDS) .readTimeout(60, TimeUnit.SECONDS) .build();
  4. إستخدام OkHttpClient:

    • يمكنك الآن استخدام client لإرسال طلبات HTTP عبر البروكسي.
    • في الكود الأصلي الذي قدمته، يتم إرسال طلب GET إلى URL محدد.
    java
    Request request = new Request.Builder() .url(urlString) .get() .addHeader("authorization", "Basic " + password) .addHeader("cache-control", "no-cache") .build(); Response response = client.newCall(request).execute();

هذا الكود يضمن أن جميع الاتصالات تمر عبر البروكسي المحدد، ويتيح لك توفير بيانات المصادقة اللازمة لضمان الوصول الآمن إلى الخوادم عبر البروكسي. يمكنك استبدال القيم في الكود بالبيانات الفعلية الخاصة بالبروكسي الذي تقوم بتكوينه.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر