最佳解答者
請教HttpClient

問題
-
老師前輩好
想請問我在asp.net web form 先在 button_click事件呼叫抓台銀匯率
請問如何將網頁內容 responseBody 直接存到變數? 需要對非同步方法了解那些?
請再幫忙指導一下,謝謝
protected void Button6_Click(object sender, EventArgs e)
{
MyHttpClientPage("https://rate.bot.com.tw/xrt/fltxt/0/day");}
async void MyHttpClientPage(string url)
{
ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls;
using (HttpClient client = new HttpClient())
{
try
{
string responseBody = "";
HttpResponseMessage response = await client.GetAsync(url);
response.EnsureSuccessStatusCode();
responseBody = await response.Content.ReadAsStringAsync();}
catch (HttpRequestException e)
{
}}
解答
-
通常不會整包HTML抓回來,會解析只拿取你需要的值。
例如,透過:https://html-agility-pack.net 來解析。
理直氣和,切記。
個人
- Blog:KingKong Bruce記事
- Web:KKBruce.tw
社群
- 已標示為解答 effor 2022年6月17日 上午 05:14
-
1. 你HttpClient使用有點錯誤,不要用using去包:https://docs.microsoft.com/zh-tw/dotnet/api/system.net.http.httpclient 看一下文件說明。
2. 我用那麼久HttpClient沒有碰過SSL的問題也
3. 它非HTML的內容,要自己寫解析程式沒錯。
理直氣和,切記。
個人
- Blog:KingKong Bruce記事
- Web:KKBruce.tw
社群
- 已標示為解答 effor 2022年6月20日 上午 07:36
所有回覆
-
通常不會整包HTML抓回來,會解析只拿取你需要的值。
例如,透過:https://html-agility-pack.net 來解析。
理直氣和,切記。
個人
- Blog:KingKong Bruce記事
- Web:KKBruce.tw
社群
- 已標示為解答 effor 2022年6月17日 上午 05:14
-
1. 你HttpClient使用有點錯誤,不要用using去包:https://docs.microsoft.com/zh-tw/dotnet/api/system.net.http.httpclient 看一下文件說明。
2. 我用那麼久HttpClient沒有碰過SSL的問題也
3. 它非HTML的內容,要自己寫解析程式沒錯。
理直氣和,切記。
個人
- Blog:KingKong Bruce記事
- Web:KKBruce.tw
社群
- 已標示為解答 effor 2022年6月20日 上午 07:36
-
WebForm程式叫用HttpClient發生SSL問題可以看一下這篇看有沒有幫助:
The request was aborted: Could not create SSL/TLS secure channel
老師您好
後來參照此網頁已解決asp.net web form 導致ssl的問題,謝謝您