我正试图从Blazor WebASM项目向web api发出请求。托管web api的服务器是具有自签名证书的开发人员计算机。我已经配置了CORS。我正在尝试使用以下代码绕过证书:
using( var httpClientHandler = new HttpClientHandler() )
{
httpClientHandler.ServerCertificateCustomValidationCallback = ( message, cert, chain, errors ) => { return true; };
using( var client = new HttpClient( httpClientHandler ) )
{
// Make your request...
}
}
无论如何,我收到以下错误:
blazor.webassembly.js:1 System.PlatformNotSupportedException:属性不支持ServerCertificateCustomValidationCallback。
- 如何从WebASM blazor项目向自签名web api服务器发出简单的http请求
Blazor WebAssembly依赖浏览器发出http请求。在后台,它使用fetch
api(MDN(。出于安全原因,Web浏览器拒绝不受信任的证书。
解决方案是将您的自签名证书添加到浏览器或操作系统的证书存储中。您也可以使用特定的标志启动浏览器,以允许不受信任的证书(不推荐使用,因为它适用于所有域(。