postMethod.setParameter("localKBURL", getLocalKBURL());
postMethod.setRequestBody(bin);
postMethod.addRequestHeader("Content-type",
"text/xml; charset=ISO-8859-1");
setParameter在setRequestBody之前,应该后者会clear parameters。
虽然按照上面的顺序应该是没有问题的,但是实际上setParameter和setHeader存在冲突,只能把参数加入Header:
postMethod.addRequestHeader("localKBURL",getLocalKBURL());
然后,再取参数时:
String localKBURL = request.getParameter("localKBURL");
if(localKBURL == null || localKBURL.length() == 0)
localKBURL = request.getHeader("localKBURL");
postMethod.setRequestBody(bin);
postMethod.addRequestHeader("Content-type",
"text/xml; charset=ISO-8859-1");
setParameter在setRequestBody之前,应该后者会clear parameters。
虽然按照上面的顺序应该是没有问题的,但是实际上setParameter和setHeader存在冲突,只能把参数加入Header:
postMethod.addRequestHeader("localKBURL",getLocalKBURL());
然后,再取参数时:
String localKBURL = request.getParameter("localKBURL");
if(localKBURL == null || localKBURL.length() == 0)
localKBURL = request.getHeader("localKBURL");
博客指出在代码中setParameter在setRequestBody之前,理论上没问题,但实际setParameter和setHeader存在冲突。解决办法是把参数加入Header,取参数时先尝试用getParameter获取,若为空则用getHeader获取。
593

被折叠的 条评论
为什么被折叠?



