ما الذي يحتاج مطورو الواجهة الأمامية إلى معرفته عن الواجهة الخلفية؟

يمكن تنفيذ الغالبية العظمى من الأشياء التي يجب على مطوري الواجهة الأمامية القيام بها دون معرفة أي شيء عن الواجهة الخلفية باستثناء واجهة برمجة التطبيقات.


ومع ذلك ، إذا كنت تعمل في مهام مختلفة لفترة طويلة ، فمن المحتمل أن تصادف شيئًا يتطلب بعض المعرفة في مجال الواجهة الخلفية.


فيما يلي قائمة قصيرة بما يجب أن يكون مصمم الواجهة على علم به.


تكرار الطلب


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


كيف يمكننا قياس مدى تكلفة الطلب؟


تخبرنا إحدى القواعد العملية أن التسجيل دائمًا ما يكون أكثر تكلفة من القراءة ، لذلك كلما زادت البيانات المكتوبة ، زادت تكلفة الاستعلامات.


دعونا نلقي نظرة على مثال عندما يصبح هذا حرجًا: لنفترض أننا نطور مستندات جوجل.


نريد ألا يفقد المستخدم ما يكتبه إذا ترك التطبيق فجأة ، لذلك غالبًا ما نحفظ البيانات. هل يمكننا حفظ كل شخصية جديدة أو حذفها؟


على الأرجح لن تتمكن الخلفية الخاصة بك من معالجة كل هذه الطلبات ، أو أن تكلفة البنية التحتية ستكون باهظة. من خلال تأخير البيانات وحفظها فقط بعد توقف المستخدم عن الكتابة ، من الممكن تحقيق 99٪ من النتيجة المرجوة دون التكلفة الباهظة البالغة 1٪ المتبقية.


في المثال التالي ، لنفترض أنك تريد استطلاع الخلفية للتغييرات بحيث يكون لديك دائمًا أحدث إصدار من ملف .doc. كم مرة تحتاج إلى إجراء استفسارات؟ القراءة أرخص بكثير من الكتابة ، لذا يمكنك تقديم المزيد من هذه الطلبات نسبيًا ، ولكن لا يزال لديهم حد.


, : , . , , .


(downtime)


- . , - .


, " ", ( , , )


, . , e , .


, try catch . javascript (recovery panic), , .


HTTP


HTTP ( ). , 400.


, .


, , , 401 .


, 400- , , . 500- , .


HTTP :


  • HTTP . ( 20 ), -, . , -.
  • ( ), HTTP (multipart/form-data), .
  • , URL. - query , 2048 , HTTP .


- , ?


. :


  1. — . , , .
  2. , . macbook, chromebook 100 .
  3. . pro . , - - .

-


, , - - . (Same-Origin Policy). , .


npm/yarn , -.


:


  • hosts nginx*.
  • c- , production false, development true.
  • .

(CSRF) — , .


: - javascript , .()


, CSRF , - . .



. , , , .
- , , favouritewebsite.com/static/script.js.


script.js? . , script.js script.js?v=2, index.html.
script.js , ( index.html ! index.html ).


, javascript script.4e885f13.js. css , .


, .


* ملاحظة المترجم:


في الأصل كان مثل هذا:


عيّن نطاقات الخادم إلى بعض أسماء المضيف في تهيئة مضيف بيئة التطوير.

يمكن أن أسيء فهم ما أراد المؤلف أن يقوله ، لذلك أضفت حاشية سفلية.


All Articles