ما هو التصميم الجيد نمط ويب طريقة العودة القيم ؟

StackOverflow https://stackoverflow.com/questions/39585

  •  09-06-2019
  •  | 
  •  

سؤال

عندما الترميز خدمات ويب, كيف يمكنك بنية العودة القيم ؟ كيف يمكنك التعامل مع حالات الخطأ (المتوقع منها وغير متوقعة منها)?إذا تم إرجاع شيء بسيط مثل int, هل فقط العودة ، أو تضمين ذلك في أكثر تعقيدا الكائن ؟ هل كل من شبكة الطرق داخل الخدمة العودة مثيل من فئة واحدة ، أو يمكنك إنشاء مخصص عودة قيمة الدرجة لكل طريقة ؟

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

المحلول

أنا أحب طلب/استجابة الكائن النمط ، حيث تغلف حججك في واحد [تشغيل]طلب الدرجة التي بسيط الممتلكات العامة على ذلك.

شيء مثل AddCustomerRequest الذي سيعود AddCustomerResponse.

رد يمكن أن تشمل معلومات عن نجاح/فشل العملية ، أي الرسائل التي قد تستخدم من قبل واجهة المستخدم ، وربما معرف العميل التي تم إضافتها ، على سبيل المثال.

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

نصائح أخرى

+1 على بن الإجابة.

وبالإضافة إلى ذلك, أقترح معتبرا أن استجابة عامة تسمح متعددة خطأ/تحذير اذا تسمح الرد أن تكون شاملة وقابلة للتنفيذ ممكن.(هل ترغب في استخدام برنامج التحويل البرمجي التي توقفت بعد ظهور رسالة الخطأ الأولى أو تلك التي أخبرتك قدر الإمكان؟)

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

الصابون أخطاء هي معيار الممارسة حيث تطبيق الاستدعاء الصابون العميل.هناك حالات مثل عميل COM باستخدام XMLHTTP ، حيث الصابون تحليل مثل XML و الصابون أخطاء لا يمكن التعامل معها بسهولة.لا تستطيع التصويت حتى الآن ولكن آخر +1 @بن Scheirman.

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