|
|
@@ -22,10 +22,7 @@ import com.uas.service.donate.service.ProjectRecodeService;
|
|
|
import com.uas.service.donate.service.ProjectService;
|
|
|
import com.uas.service.donate.service.UserService;
|
|
|
import com.uas.service.donate.service.WechatOrderService;
|
|
|
-import com.uas.service.donate.util.IpUtils;
|
|
|
-import com.uas.service.donate.util.StringUtils;
|
|
|
-import com.uas.service.donate.util.WechatConnector;
|
|
|
-import com.uas.service.donate.util.WxCheckoutUtil;
|
|
|
+import com.uas.service.donate.util.*;
|
|
|
import org.apache.commons.io.IOUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
@@ -538,9 +535,13 @@ public class WxpayController {
|
|
|
if ("0:0:0:0:0:0:0:1".equals(spbillCreateIp)) {
|
|
|
spbillCreateIp = "127.0.0.1";
|
|
|
}
|
|
|
- wxPayUnifiedOrderRequest.setSpbillCreateIp(spbillCreateIp);//是 APP和网页支付提交用户端ip,Native支付填调用微信支付API的机器IP
|
|
|
+ logger.info("获取用户机器IP,方式一:IpUtils.getIpFromRequest(request)=" + spbillCreateIp);
|
|
|
+ logger.info("获取用户机器IP,方式二:getIp(request)=" + getIp(request));
|
|
|
+ logger.info("获取用户机器IP,方式三:getRealIp(request)=" + getRealIp(request));
|
|
|
+ logger.info("获取用户机器IP,方式四:AgentUtils.getIp(request)=" + AgentUtils.getIp(request));
|
|
|
+ //wxPayUnifiedOrderRequest.setSpbillCreateIp(spbillCreateIp);//是 APP和网页支付提交用户端ip,Native支付填调用微信支付API的机器IP
|
|
|
//wxPayUnifiedOrderRequest.setSpbillCreateIp(getIp(request));
|
|
|
- //wxPayUnifiedOrderRequest.setSpbillCreateIp("10.10.100.200");
|
|
|
+ wxPayUnifiedOrderRequest.setSpbillCreateIp(AgentUtils.getIp(request));
|
|
|
|
|
|
//wxPayUnifiedOrderRequest.setTimeStart(null);//否 订单生成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。
|
|
|
//wxPayUnifiedOrderRequest.setTimeExpire(null);//否 订单失效时间,格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。
|
|
|
@@ -608,4 +609,18 @@ public class WxpayController {
|
|
|
}
|
|
|
return request.getRemoteAddr();
|
|
|
}
|
|
|
+
|
|
|
+ public String getRealIp(HttpServletRequest request) {
|
|
|
+ String ip = request.getHeader("x-forwarded-for");
|
|
|
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
|
|
|
+ ip = request.getHeader("Proxy-Client-IP");
|
|
|
+ }
|
|
|
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
|
|
|
+ ip = request.getHeader("WL-Proxy-Client-IP");
|
|
|
+ }
|
|
|
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
|
|
|
+ ip = request.getRemoteAddr();
|
|
|
+ }
|
|
|
+ return ip;
|
|
|
+ }
|
|
|
}
|