سؤال

شعوري الداخلي هو أن خدمات الويب المستندة إلى المستندات مفضلة في الممارسة العملية - هل هذه هي تجربة الأشخاص الآخرين؟هل من الأسهل دعمهم؟(لاحظت أن SharePoint يستخدم Any لـ "نوع المستند" في واجهة WSDL الخاصة به، وأعتقد أن هذا يجعله مستندًا إلى المستند).

أيضًا - هل يقدم الأشخاص الآن خدمات من نوع WSDL وRest لنفس الوظيفة؟تحظى WSDL بشعبية كبيرة في مجال إنشاء التعليمات البرمجية، ولكن بالنسبة للواجهات الأمامية مثل PHP و Rails، يبدو أنهم يفضلون الراحة.

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

المحلول

يعد المستند مقابل RPC مجرد سؤال إذا كنت تستخدم خدمات ويب SOAP التي تتطلب وصفًا للخدمة (WSDL).لا تستخدم خدمات الويب RESTful WSDL لأنه لا يمكن وصف الخدمة بها، والشعور هو أن REST أبسط وأسهل في الفهم.وقد اقترح بعض الناس وادل كوسيلة لوصف خدمات REST.

تسهل لغات مثل Python وRuby وPHP العمل مع REST.يتم استخدام WSDL لإنشاء كود C# (وكيل خدمة ويب) الذي يمكن استدعاؤه بسهولة من لغة ثابتة.يحدث هذا عند إضافة مرجع الخدمة أو مرجع الويب في فيجوال ستوديو.

يعتمد ما إذا كنت تقدم خدمات SOAP أو REST على عدد المستخدمين لديك.ما إذا كان سيتم استخدام الخدمات عبر الإنترنت أو داخل مؤسستك فقط يؤثر على اختيارك.قد يحتوي SOAP على بعض الميزات (معايير WS-*) التي تعمل بشكل جيد مع B2B أو الاستخدام الداخلي، ولكنها سيئة بالنسبة لخدمة الإنترنت.

تم وصف المستند/الحرفي مقابل RPC لخدمات SOAP في هذا مقالة IBM DevelopmentWorks.يعتبر المستند/الحرفي بشكل عام هو الأفضل للاستخدام من حيث إمكانية التشغيل البيني (Java إلى .NET وما إلى ذلك).أما فيما يتعلق بما إذا كان الدعم أسهل، فهذا يعتمد على ظروفك.وجهة نظري الشخصية هي أن الناس يميلون إلى جعل هذه الأشياء أكثر تعقيدًا مما ينبغي، وأن نهج REST الأبسط هو الأفضل.

نصائح أخرى

كما ذكرنا سابقًا، من الأفضل اختيار Document Literal بدلاً من RPC المشفر كلما أمكن ذلك.صحيح أن مكتبات جافا القديمة (Axis1 وGlue وغيرها من عناصر ما قبل التاريخ) تدعم فقط RPC المشفر، ولكن في أحدث Java SOAP libs لا تدعمه (على سبيل المثال.AXIS2، XFire، CXF).لذلك حاول الكشف عن خدمة RPC المشفرة فقط إذا كنت تعلم أنك بحاجة إلى التعامل مع مستهلك لا يمكنه القيام بعمل أفضل.ولكن مرة أخرى ربما يمكن أن يساعد XML RPC فقط في هذه التطبيقات القديمة.

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

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