package jframe.pay.wx.http;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import jframe.pay.wx.domain.WxConfig;
public class PackageRequestHandler extends RequestHandler {
public PackageRequestHandler() {
super();
}
/**
* 获取带参数的请求URL
*
* @return String
* @throws UnsupportedEncodingException
*/
@SuppressWarnings("rawtypes")
public String getRequestURL() throws UnsupportedEncodingException {
this.createSign();
StringBuilder sb = new StringBuilder();
// String enc = TenpayUtil.getCharacterEncoding(this.request,
// this.response);
String enc = WxConfig.getConf(WxConfig.KEY_CHARSET);
Set es = super.getAllParameters().entrySet();
Iterator it = es.iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
String k = (String) entry.getKey();
String v = (String) entry.getValue();
sb.append(k + "=" + URLEncoder.encode(v, enc) + "&");
}
// 去掉最后一个&
String reqPars = sb.substring(0, sb.lastIndexOf("&"));
// 设置debug信息
this.setDebugInfo("md5 sb:" + getDebugInfo() + "\r\npackage:" + reqPars);
return reqPars;
}
}