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)