微信H5支付问题

本人QQ-554433626 2017-09-22 04:45:03
做微信H5支付时出现问题:
网络环境未能通过安全验证,请稍后再试


有的浏览器可以调起支付有的不可以
有做过支付的 有这方面经验吗

我的获取IP方法:

       
private static string GetClientIp(bool skipproxy)
{
string result = null;
if (skipproxy)
{
//忽略代理,获取客户端IP或最后一个代理IP
result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
else
{
#region 有代理,获取客户端IP,有伪造可能
foreach (var header in new[] { "HTTP_CLIENT_IP", "HTTP_X_FORWARDED_FOR", "HTTP_FROM", "REMOTE_ADDR" })
{
string temp = System.Web.HttpContext.Current.Request.ServerVariables[header];
if (!string.IsNullOrEmpty(temp) && IsIpAddress(temp))
{
result = temp;
break;
}
}
if (string.IsNullOrEmpty(result))
{
result = HttpContext.Current.Request.UserHostAddress;
}
if (string.IsNullOrEmpty(result))
{
#region get local(LAN) Connected ip address
//LAN ip地址
string stringHostName = Dns.GetHostName();
//Get Ip Host Entry
IPHostEntry ipHostEntries = Dns.GetHostEntry(stringHostName);
//Ip Host地址集
IPAddress[] arrIpAddress = ipHostEntries.AddressList;

if (arrIpAddress.Length >= 2)
{
result = arrIpAddress[arrIpAddress.Length - 2].ToString();
}
else if (arrIpAddress.Length > 0)
{
result = arrIpAddress[0].ToString();
}
else
{
arrIpAddress = Dns.GetHostAddresses(stringHostName);
result = arrIpAddress.Length >= 0 ? arrIpAddress[0].ToString() : "127.0.0.1";
}
#endregion
}
//多个代理情况处理,一般第一个会是真实iP
if (!string.IsNullOrEmpty(result))
{
result = result.Split(',')[0].Trim();
}
#endregion
}

if (result == "::1")
{
return "127.0.0.1";
}
return IsIpAddress(result) ? result : "invalid ip";
}
...全文
1325 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mirrorspace 2018-01-15
  • 打赏
  • 举报
回复
这个取IP的方法,好像我也有一份,但觉得没多大用处 request.UserHostAddress; 这一句也行.
  • 打赏
  • 举报
回复
直接用 Senparc.Weixin.MP,按他们的例子做就可以了
u010108702 2018-01-11
  • 打赏
  • 举报
回复
我在这里回答了,有需要可以看下 http://bbs.csdn.net/topics/392186418
请叫我毛线 2017-09-30
  • 打赏
  • 举报
回复
官方的文档 商户侧统一下单传的终端IP(spbill_create_ip)与用户实际调起支付时微信侧检测到的终端IP不一致导致的,这个问题一般是商户在统一下单时没有传递正确的终端IP到spbill_create_ip导致,详细可参见客户端ip获取指引
本人QQ-554433626 2017-09-29
  • 打赏
  • 举报
回复
0000000000000000000000000000

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧