JumpKick.HttpLib — GET 請求
一、基礎語法
Http.Get("目標位址")
.OnSuccess(result => {
// 請求成功回呼:接收網頁原始碼文字
})
.OnFail(webexception => {
// 請求失敗回呼:攔截網路例外
})
.Go(); // 啟動非同步網路請求Code language: JavaScript (javascript)
OnSuccess:連線成功、伺服器正常回應時觸發OnFail:網域名稱錯誤、無法連線、404、網路中斷等異常時觸發.Go():執行請求,非同步執行,不會阻塞主執行緒
1:最簡單正常請求(不處理例外)
若缺少 OnFail,一旦發生網路錯誤,程式會直接彈窗崩潰
using System;
using JumpKick.HttpLib;
class Program
{
static void Main(string[] args)
{
Http.Get("https://httpbin.org/html")
.OnSuccess(result =>
{
Console.WriteLine(result);
})
.Go();
Console.ReadKey();
}
}Code language: JavaScript (javascript)
2:同時處理成功與例外
using System;
using JumpKick.HttpLib;
class Program
{
static void Main(string[] args)
{
Http.Get("https://httpbin.org/html")
.OnSuccess(result =>
{
Console.WriteLine("==== 請求成功 ====");
Console.WriteLine(result);
})
.OnFail(webexception =>
{
Console.WriteLine("==== 請求發生例外 ====");
Console.WriteLine(webexception.Message);
})
.Go();
Console.ReadKey();
}
}Code language: JavaScript (javascript)
3:手動模擬錯誤
刻意寫錯網域名稱https://httpbin.org/html1(結尾多輸入字母 l),用來測試 OnFail 是否正常運作
using System;
using JumpKick.HttpLib;
class Program
{
static void Main(string[] args)
{
// 錯誤網址:刻意多加字元,造成網域名稱解析失敗
Http.Get("https://httpbin.org/htmll")
.OnSuccess(result =>
{
Console.WriteLine("==== 請求成功 ====");
Console.WriteLine(result);
})
.OnFail(webexception =>
{
Console.WriteLine("==== 請求例外(已攔截) ====");
Console.WriteLine("例外資訊:" + webexception.Message);
})
.Go();
Console.ReadKey();
}
}Code language: JavaScript (javascript)
範例
// 不存在的網域,一定會觸發網路例外
Http.Get("https://no-website-test-9999.test")
.OnSuccess(result =>
{
Console.WriteLine("==== 請求成功 ====");
Console.WriteLine(result);
})
.OnFail(webexception =>
{
Console.WriteLine("==== 請求例外(已攔截) ====");
Console.WriteLine("例外資訊:" + webexception.Message);
})
.Go();
Console.ReadKey();Code language: JavaScript (javascript)
GET 請求
Previous: 簡介