سؤال

لنفترض أنك تريد إنشاء محرر BlogEditor بسيط للغاية، وإحدى أفكارك هي القيام بما يفعله Live Writer والسؤال فقط عن عنوان URL الخاص بمدونة الشخص.كيف يمكنك اكتشاف نوع المدونة؟

يمكن إجراء الاكتشاف الأساسي باستخدام عنوان URL نفسه، مثل "http://myblog.blogger.com" إلخ.ولكن ماذا لو تمت استضافته ذاتيًا؟

أنا مهتم في الغالب بكيفية القيام بذلك في Java، ولكن يمكن استخدام هذا السؤال أيضًا كمرجع لأي لغة أخرى.

هل كانت مفيدة؟

المحلول

ستحتوي العديد من المدونات (معظمها؟) على علامة وصفية لـ "المولد" والتي ستدرج محرك المدونة.على سبيل المثال، ستحتوي مدونة blogger على العلامة الوصفية التالية:

<meta name="generator" content="Blogger" />  

تعرض مدونة Subtext الخاصة بي علامة تعريف المولد التالية:

<meta name="Generator" content="Subtext Version 1.9.5.177" />  

ستكون هذه العلامة الوصفية هي المكان الأول الذي يجب البحث فيه.بالنسبة للمدونات التي لم تقم بتعيين علامة التعريف هذه في المصدر، فسيتعين عليك اللجوء إلى البحث عن الأنماط لتحديد نوع المدونة.

نصائح أخرى

توفر بعض المدونات علامة وصفية للمنشئ - على سبيل المثال.Wordpress - يمكنك معرفة ما إذا كان هناك أي استثناءات لذلك.

يجب أن تكون حذرًا في كيفية اكتشافه، فقد فاجأني Google بهذا السطر:

<meta content='blogger' name='generator'/>

الاقتباسات المفردة هي تجديف.

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

هناك فكرة أخرى تتمثل في قراءة مستندات محرك التدوين الشائع المتنوع لمعرفة كيفية اكتشاف موقع مساراته لأشياء مثل MetaWebLog API، وما إلى ذلك.IIRC، Live Writer لديه دعم مدمج للأنواع الأكثر شيوعًا، ويتم تصنيف الباقي على أنه "MetaWebLog API Blog" أو شيء من هذا القبيل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top