none
我再集成支付宝接口时报验证错误可是添加了这句就没问题了 RRS feed

  • 问题

  •  

    我再集成支付宝接口时,在验证是否是支付宝发过来的数据时报验证错误,可是添加了这句就没问题了,这句话是什么意思啊,起什么作用?

    ServicePointManager.ServerCertificateValidationCallback = (a, b, c, d) => { return true; };

    代码如下

      /// <summary>
            /// 获取远程服务器ATN结果
            /// </summary>
            /// <param name="strUrl">指定URL路径地址</param>
            /// <param name="timeout">超时时间设置</param>
            /// <returns>服务器ATN结果</returns>
            private string Get_Http(string strUrl, int timeout)
            {
                string strResult;
                try
                {

    //就在这里添加了这句话就没问题了,要不添加就报验证失败              

      ServicePointManager.ServerCertificateValidationCallback = (a, b, c, d) => { return true; };
                    HttpWebRequest myReq = (HttpWebRequest)HttpWebRequest.Create(strUrl);
                    myReq.Timeout = timeout;
                    HttpWebResponse HttpWResp = (HttpWebResponse)myReq.GetResponse();
                    Stream myStream = HttpWResp.GetResponseStream();
                    StreamReader sr = new StreamReader(myStream, Encoding.Default);
                    StringBuilder strBuilder = new StringBuilder();
                    while (-1 != sr.Peek())
                    {
                        strBuilder.Append(sr.ReadLine());
                    }

                    strResult = strBuilder.ToString();
                }
                catch (Exception exp)
                {
                    strResult = "错误:" + exp.Message;
                }

                return strResult;
            }



    2013年3月10日 8:01

答案

全部回复