簡體   English   中英

Xamarin PCL使用443以外的其他端口與REST Api進行通信

[英]Xamarin PCL using other port than 443 communicating with REST Api

我有一個Xamarin PCL客戶端使用帶有Letsnecrypt證書的SSL與WebApi后端通信。 使用端口號443時,一切正常(URL中沒有:443,只有https)。

我出於各種原因無法使用此端口,因此我切換到8082。 現在我在客戶端中收到以下錯誤:

錯誤:SecureChannelFailure(身份驗證或解密失敗。)

在/Users/builder/data/lanes/3511/77cb8568/source/mono/mcs/class/Mono.Security/Mono.Security中的Mono.Security.Protocol.Tls.SslStreamBase.EndRead(System.IAsyncResult asyncResult)[0x00051] .Protocol.Tls / SslStreamBase.cs:883位於/ Users / builder / data / lanes / 3511 / 77cb8568 / source / mono / mcs中的Mono.Net.Security.Private.LegacySslStream.EndAuthenticateAsClient(System.IAsyncResult asyncResult)[0x00011] /class/System/Mono.Net.Security/LegacySslStream.cs:475 at Mono.Net.Security.Private.LegacySslStream.AuthenticateAsClient(System.String targetHost,System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates,System.Security.Authentication .SslProtocols enabledSslProtocols,System.Boolean checkCertificateRevocation)[0x00000]在Mono的/Users/builder/data/lanes/3511/77cb8568/source/mono/mcs/class/System/Mono.Net.Security/LegacySslStream.cs:445。 / Users / builder / data / lanes / 3511 / 77cb8568 / source / mono中的Net.Security.MonoTlsStream.CreateStream(System.Byte [] buffer)[0x0001e] /mcs/class/System/Mono.Net.Security/MonoTlsStream.cs:99

當我在客戶端使用瀏覽器並打開URL時,一切正常。 證書已獲批准。 已經嘗試過https://www.digicert.com/help/來檢查證書,一切正常。

我正在使用ModernHttpClient:

client = new HttpClient(new NativeMessageHandler());

我究竟做錯了什么?

我相信這可能是一個Mono bug [1]已修復,但修復程序只發布到我們的Alpha通道。 您可以嘗試更新到Alpha通道[2]並查看問題是否已解決?

[1] https://bugzilla.xamarin.com/show_bug.cgi?id=46549

[2]切換更新頻道:

在Xamarin Studio中,您可以使用Xamarin Studio-> Check for Updates ...菜單切換更新頻道,在Update Channel旁邊的下拉列表中選擇Stable,Beta或Alpha,然后單擊Switch Channel按鈕。

在Visual Studio中,導航到菜單工具 - >選項,然后向下滾動以展開Xamarin部分並選擇“其他”。 從下拉菜單中選擇Stable,Beta或Alpha,然后單擊立即檢查。 如果對該頻道的更新可用,您將獲得類似於上述Xamarin Studio的對話框。 按上述步驟進行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM