要访问的 API URL 地址
发布时间:2025-06-24 19:12:59 作者:北方职教升学中心 阅读量:579
public string PostXmlAndCertToUrl(string url, string postData,string cert,string password){ string resp = string.Empty; ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);System.Security.Cryptography.X509certificatestes.X509certificate2 cer = new System.Security.Cryptography.X509certificatestes.X509certificate2(cert, password, System.Security.Cryptography.CertificatesX509.X509Keystorageflagstag.PersistKeySet | System.Security.Cryptography.CertificatesX509.X509Keystorageflagstag.MachineKeySet); HttpWebRequest webrequest = (HttpWebRequest)HttpWebRequest.Create(url); webrequest.ClientCertificates.Add(cer); webrequest.Method = "post"; webrequest.ContentType = "application/x-www-form-urlencoded"; webrequest.ContentLength = postData.Length; HttpWebResponse response = null; try { StreamWriter swRequestWriter = new StreamWriter(webrequest.GetRequestStream()); swRequestWriter.Write(postData); if (swRequestWriter != null) swRequestWriter.Close(); response = (HttpWebResponse)webrequest.GetResponse(); using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8)) { resp = reader.ReadToEnd(); } } catch (Exception exp) { throw exp; } finally { if (response != null) response.Close(); } return resp;}private static bool CheckValidationResult(object sender, System.Security.Cryptography.X509certificatestes.X509certificatertificate certificate, System.Security.Cryptography.X509certificatestes.X509Chain chain, System.Net.Security.SslPolicyErrors errors){ if (errors == System.Net.Security.SslPolicyErrors.None) return true; return false;}。
《C# 实现微信退款和对账。
关于微信支付申请的API证书一般有效期为5年,最多可以同时申请9个证书,请注意证书的更新。
解决。
感谢您的阅读,希望这篇文章能对你有所帮助。” ,系统返回错误:
类似地调用以下代码:
string cert = @"D:\wxpay\apiclient_cert.p12";string password = "14302";string post_data = getRefundOrderXml(refundorder, key);string request_data = PostXmlAndCertToUrl(RefundOrderUrl, post_data,cert,password);
问题出在 PostXmlAndCertToUrl 调用,cert 申请证书的存放位置,passwrd 为证书密码开发运行环境
操作系统: Windows Server 2019 DataCenter。System.Net.ServicePointManager.SecurityProtocol 属性可选择安全套接字层 (SSL) 或传输层安全 (TLS) 协议版,这可能是由于协议版本的不匹配,通过在Page__Load 在服务器事件中添加以下句子解决问题
void Page_Load(Object sender, EventArgs e){ System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls12;}。
实现携带证书 API URL调用。
PostXmlAndCertToUrl 实现携带安全证书访问 API 能力,见下表。携带证书的实现 API URL调用。其他人可以参考我的文章。
故障现象。
携带证书的实现 API URL调用。其他人可以参考我的文章。
故障现象。
其他。
其它。类型。《C# 解决访问 API 显示基础连接已关闭的问题。
其他。
参数名。#xff1a;序号。
password。 cert。解决方案。
实现微信退款功能,我们需要在微信支付商户后台申请安全证书,并调用退款API URL。
要 POST 指定规则的内容 。目录。
2。 post_data。.net版本: .NetFramework.7.2 。
开发工具:VS2019 C#。
url。 1。《C# 实现访问 Web API Url 提交数据并获取处理结果。
string。 说明。如果可以直接访问 API URL ,可以参考我的文章:
《C# 关于“你与网站的连接不是私人连接.."问题"。
故障现象。
开发运行环境。
string。
上一篇:创建第一个 Flink 项目