postmethod setRequestbody (سلسلة) تم إهمالها - لماذا؟
-
21-09-2019 - |
سؤال
أنا أستخدم Apache Commons HttpClient postmethod 3.1.
في فئة postmethod ، توجد أيضًا ثلاث طرق لتحديد هيئة طلب Post Method:
setRequestBody(InputStream body)
setRequestBody(String body)
setRequestBody(NameValuePair[] parametersBody);
NameValuepair API
يتم إهمال أول طريقتين. هل يعرف أي شخص لماذا؟ لأنه إذا كنت أرغب في وضع XML لطلب الجسم ، فإن NameValuePair لا يساعدني.
هل يعرف أي شخص حلًا أو حلًا؟
المحلول
يقول Javadoc:
إهمال. استخدم setRequestentity (طلب)
يمتلك الطلب الكثير من المنفذين ، أي:
bytearrayrequestentity ، fileRequestentity ، inputstreamrequestentity ، multirequestentity ، stringRequestentity
استخدم الشخص الذي يناسبك:
- إذا كان XML الخاص بك في
String
, ، استخدم الStringRequestEntity
- إذا كان في ملف ، استخدم
FileRequestEntity
وهلم جرا.
نصائح أخرى
نعم ، على سبيل المثال ،
post.setRequestEntity( new StringRequestEntity( xml ) );
بدلاً من
post.setRequestBody( xml );
لا تنتمي إلى StackOverflow