مسارات موارد WebDav مختلفة لنفس المورد عند استخدام عملاء مختلفين

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

  •  04-10-2019
  •  | 
  •  

سؤال

أنا بصدد اختبار تمكين عرض نظام dav على الويب باستخدام عدد من العملاء المختلفين.يبدو أن أحد العملاء يقوم أحيانًا بأشياء غريبة وكنت أتساءل هل هذا متوقع..

يوضح السجل أدناه كيف قام بطريقة ما بتشويه المسار إلى الدليل (المجموعة في webdav talk) عن طريق تضمين المسار الكامل إلى servlet مرة أخرى (انظر إلى السطر الأخير).جميع العملاء الآخرين لا يفعلون ذلك، فهل هذا يرجع في المقام الأول إلى أنه عميل سيئ الترميز ومن المحتمل أن يكون معطلاً؟

[org.eclipse.jetty.util.log] : REQUEST /milton/http:/127.0.0.1/milton/!renamed/ on org.eclipse.jetty.server.nio.SelectChannelConnector$2@59fb21
[org.eclipse.jetty.util.log] : servlet=com.bradmcevoy.http.MiltonServlet-11108810
[org.eclipse.jetty.util.log] : servlet holder=
[org.eclipse.jetty.util.log] : chain=
[com.bradmcevoy.http.HttpManager] : PROPFIND :: http://127.0.0.1:9000/milton/http:/127.0.0.1/milton/!renamed/ - http://127.0.0.1:9000/milton/http:/127.0.0.1/milton/!renamed/
[org.eclipse.jetty.util.log] : RESPONSE /milton/http:/127.0.0.1/milton/!renamed/  404

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

/milton/!renamed 

و لا

/milton/http:/127.0.0.1/milton/!renamed/
هل كانت مفيدة؟

المحلول

وهو على الأغلب العميل.- ما يبدو هو أن الخادم يرد باستخدام عنوان URL مؤهل بالكامل، مع المخطط والمضيف والمنفذ (http://127.0.0.1/9000)، ولكن العميل يتعامل معه على أنه معرف uri نسبي (href - "/ milton/abc") وتعليق المعلومات عليه مرة أخرى.

غالبًا ما يتم استخدام إرجاع href (مثل /milton/abc)، لكن كلاهما قانوني.

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