
كنت نوقشت بالفعل في المقال سابق كيف أن الحصول على محتوى صفحة ويب من خلال لغة البرمجة بي إتش بي. كنت ستطبعها لإظهار كيف يمكن القيام بذلك في هذا الوقت C #. هنا هو الرمز ولاحقا سنشرح لكم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | public static string getContenidoWeb(string url){ //Verifico que tenga prefijado el tipo de protocolo if (!url.Contains ("http://") || !url.Contains ("https://")) { url = "http://" + url; } //Envío petición y recibo la respuesta Uri uri = new Uri (url); System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create (uri); System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)req.GetResponse (); //Proceso respuesta y convierto el flujo de llegada en cadena de caracteres System.IO.StreamReader input = new System.IO.StreamReader (res.GetResponseStream ()); char[] chrBuff = new char[256]; int intLen = 0; string strSource = ""; do{ intLen = input.Read(chrBuff, 0, 256); string strBuff = new string(chrBuff, 0, intLen); strSource += strBuff; }while (intLen > 0); return strSource; } |
من حيث المبدأ, لقد أنشأنا هذه الدالة ثابت أن نسميها دون الاضطرار إلى إنشاء مثيل للفئة التي تنتمي إليها, على الرغم من أنها المقرر الخاص وضع هذه الدالة في الفئة المناسبة ووضعه كثابتة أم لا. كما ترك في يدك تجهيز ومعالجة الأخطاء ما, للبساطة, ونحن قد ينفي أنه.
كما يمكنك مشاهدة, تأخذ الدالة معلمات على عنوان URL موقع ويب الذي تريد للحصول على التعليمات البرمجية الخاصة بك, في نموذج سلسلة نصية. حالما يتم استدعاؤه, أول شيء تقوم به تحقق عنوان URL الذي يحصل كمعلمة وقد الافتراضية بروتوكول HTTP أو HTTPS و, إذا لم يكن ذلك, ويضيف أنه.
ثم, إنشاء عريضة HttpWebRequest ويمكنك الحصول على الجواب في فئة الكائن هتبويبريسبونسي. وأخيراً, يقوم بتحويل على تدفق الوصول للبيانات في أحد سلسلة الأحرف, العودة وهذا كما النتيجة استدعاء هذه الدالة.
