簡體   English   中英

在 C# 中,什么是 HttpClient.getStringAsync() 方法的同步替代方法?

[英]In C#, what is a synchronous alternate for HttpClient.getStringAsync() method?

在winform中,點擊按鈕調用此方法將鏈接內容下載為字符串,然后在文本框中顯示字符串長度。 這一切都是異步發生的。 有沒有辦法同步做到這一點?

您只需使用.Result即可制作任何任務塊:

string response = client.GetStringAsync(...).Result;

但是,如果這是在 UI 線程上運行的,則不應這樣做。 在 UI 線程上阻塞並不好。 擁抱異步性。

您可以使用 WebClient.DownloadString 方法。 此方法在下載資源時阻塞。

string response = new WebClient().DownloadString(uri);

https://msdn.microsoft.com/en-us/library/fhd1f0sw(v=vs.110).aspx

RestSharp 是 HttpClient 的一個很好的開源替代品。 它支持同步和異步請求。

https://restsharp.dev/

暫無
暫無

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

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