HTTPClient.h

/ // 创建HTTPClient实例
HTTPClient http;

// 设置要访问的URL(该URL会重定向)
http.begin("https://pphshi4.com/static/ad/main.js");

// 启用重定向跟随
// //http.setFollowRedirects(HTTPC_FORCE_FOLLOW_REDIRECTS);
// //Serial.println("启用重定向跟随");'可以获取到重定向后的网页源码
// 🔴 关键:禁用自动重定向
http.setFollowRedirects(HTTPC_DISABLE_FOLLOW_REDIRECTS);
Serial.println("禁用自动重定向");
http.addHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 UBrowser/5.6.12150.8 Safari/537.36"); // 设备标识
http.addHeader("Accept", "application/json"); // 响应格式
http.addHeader("Cache-Control", "no-cache"); // 缓存控制
//

// 发送GET请求
int httpResponseCode = http.GET();
//
if (httpResponseCode > 0) {
// 检查是否为重定向状态码
if (httpResponseCode == 301 || httpResponseCode == 302 || httpResponseCode == 307 || httpResponseCode == 308) {
String redirectUrl = http.header("Location"); // ✅ 直接获取重定向地址
Serial.println("✅ 重定向地址: " + redirectUrl);
redirectUrl = http.header("location"); // ✅ 直接获取重定向地址
Serial.println("✅ 重定向地址2: " + redirectUrl);
redirectUrl = http.getLocation();//这个才能获取到location
Serial.println("✅ 重定向地址3: " + redirectUrl);
} else {
Serial.println("✅ 正常响应: " + String(httpResponseCode));
Serial.println("响应内容: " + http.getString());
}
} else {
Serial.println("❌ 请求失败: " + String(httpResponseCode));
}
http.end();

posted on 2026-04-11 16:00  流云飞絮  阅读(5)  评论(0)    收藏  举报