1. 创建HTTP客户端实例
var http = new okHttp();
http.setHeader("User-Agent", "Mozilla/5.0");
- new okHttp()
 创建一个HTTP客户端对象,用于发送网络请求(类似浏览器)。
- setHeader("User-Agent", "Mozilla/5.0")
 设置请求头,模拟浏览器访问(避免被服务器拒绝)。
2. 定义请求URL
var url = "http://www.baidu.com/";
- 目标地址是百度首页(可替换为任何HTTP/HTTPS URL)。
3. 发送GET请求(核心逻辑)
try {
    printl("开始发送 GET 请求到: " + url);
    var result = http.get(url);
- try-catch
 捕获请求过程中可能出现的异常(如网络错误、超时等)。
- http.get(url)
 发送GET请求,返回结果存储在- result变量中。
4. 打印完整响应对象
printl("请求完成,响应对象: " + JSON.stringify(result));
- JSON.stringify(result)
 将响应对象转为字符串,方便打印日志(调试用)。
5. 检查响应状态
if (result && result.code !== undefined) {
        printl("请求成功,状态码: " + result.code);
- result.code
 假设响应对象包含- code字段(HTTP状态码,如200表示成功)。
- 如果状态码存在,认为请求成功。
6. 处理响应内容
if (result.body !== undefined) {
            printl("响应内容: " + result.body.substring(0, 100) + "...");
        } else {
            printl("响应内容为空");
        }
- result.body
 假设响应对象包含- body字段(服务器返回的HTML/JSON数据)。
- substring(0, 100)
 只打印前100字符(避免日志过长)。
7. 处理异常响应
} else {
        printl("请求失败,响应对象异常: " + JSON.stringify(result));
    }
- 如果 result为空或没有code字段,认为请求失败。
8. 捕获并打印错误
} catch (e) {
    printl("请求失败: " + e.message);
    if (e.errorDescription) {
        printl("错误描述: " + e.errorDescription);
    }
}
- e.message
 打印错误基本信息(如超时、DNS解析失败)。
- e.errorDescription
 打印额外错误详情(如果有)。
关键点总结
- 流程顺序
 创建客户端 → 设置请求头 → 发送请求 → 检查响应 → 处理结果/错误。
- 假设条件
- okHttp返回的对象格式为- { code: 200, body: "..." }。
- 如果响应不符合此格式,会进入 else分支("响应对象异常")。
- 常见错误
- DNS解析失败:域名无法访问(如拼写错误)。
- 空响应:服务器未返回数据或网络中断。
- 状态码异常:如404(页面不存在)、500(服务器错误)。