الحصول على طلب HTTP من عملية Tibco BW
-
26-09-2019 - |
سؤال
لدي عملية Tibco BW تبدأ بنشاط "مستقبل HTTP".
أرغب في الحصول على (عبر نشاط رمز Java مخصص) حجم طلب HTTP الأصلي. (الغرض من ذلك هو جمع الإحصاءات وقياس أوقات الاستجابة وأحجام الطلب/الاستجابة وما إلى ذلك)
أرغب في قياس البيانات بالبايت وليس في الشخصيات ، هل من الممكن الحصول على الطلب كبايت أو ServleTinputStream أو شيء مشابه؟
المحلول
لا أعتقد أنه يمكنك الحصول على الطلب الأصلي من كود Java - ببساطة لأنه لا يمكنك الوصول إلى كائن HttPservletRequest لجهاز استقبال HTTP من نشاط Java. إذا كنت ترغب في الوصول إلى بيانات RAW request ، فيمكنك كتابة Servlet الوكيل والوصول إلى BusinessWorks عبر هذا الوكيل Servlet.
إذا كانت مهمتك فقط للحصول على إحصائيات على حجم الطلب ، فهناك حل أبسط. يمكنك استخدام معلمة رأس "طول المحتوى" لهذا السبب (http://www.w3.org/protocols/rfc2616/rfc2616-sec14.html).
يشير حقل رأس الكيان بطول المحتوى إلى حجم الجسم والجسم ، في عدد عشري من الثمانيات ، المرسلة إلى المستلم
طول المحتوى هو معلمة إخراج من مستقبل HTTP. قد تحتاج إلى إضافة معلمات "requesturi" و "postdata" و "Header" لأنها ليست جزءًا من هيئة الكيان.
تحديث: postdata هو جزء من الجسم والجسم ، وبالتالي يتم تضمين حجمه في طول المحتوى