From 0f91b37f7711481b9671409d0de08873d77060eb Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 20 十二月 2023 17:24:31 +0800
Subject: [PATCH] 2023年12月20日17:24:20

---
 app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java b/app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java
index d215b1a..6f035ef 100644
--- a/app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java
+++ b/app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java
@@ -78,30 +78,37 @@
             //椹卞姩鍗囩骇鏂囦欢璺緞
             String fileName = ((HTTPSession) session).getUri();
             if (!TextUtils.isEmpty(fileName)) {
-                if (fileName.contains(HdlFileLogic.getInstance().getDriveRootPath())) {
+                if (fileName.contains(HdlFileLogic.getInstance().getDriveRootPath())
+                        ||fileName.contains(HdlFileLogic.getInstance().getFirmwareRootPath())) {
                     String range = session.getHeaders().get("range");
                     if (TextUtils.isEmpty(range)) {
                         return newFixedLengthResponse("閿欒,澶撮儴娌℃湁range瀛楁(-500)");
                     }
-                    if (range.contains("=")) {
+                    HdlLogLogic.print("http閫嗗彉鍣ㄨ姹�===璇锋眰澶у皬-->" + range, true);
+                    if (!range.contains("=")) {
+                        HdlLogLogic.print("閿欒,range鐨剉alue鏍煎紡涓嶅.(-501)", true);
                         return newFixedLengthResponse("閿欒,range鐨剉alue鏍煎紡涓嶅.(-501)");
                     }
                     String[] bytesAry = range.split("=");
                     if (bytesAry.length < 2) {
+                        HdlLogLogic.print("閿欒,range鐨剉alue鏍煎紡涓嶅.(-502)", true);
                         return newFixedLengthResponse("閿欒,range鐨剉alue鏍煎紡涓嶅.(-502)");
                     }
                     String[] dataIndex = bytesAry[1].split("-");
                     if (dataIndex.length < 2) {
+                        HdlLogLogic.print("閿欒,range鐨剉alue鏍煎紡涓嶅.(-503)", true);
                         return newFixedLengthResponse("閿欒,range鐨剉alue鏍煎紡涓嶅.(-503)");
                     }
                     int startIndex = Integer.parseInt(dataIndex[0]);
                     int endIndex = Integer.parseInt(dataIndex[1]);
                     if (endIndex + 1 - startIndex <= 0) {
+                        HdlLogLogic.print("閿欒,璇锋眰澶у皬鏈夐棶棰�.(-504)", true);
                         return newFixedLengthResponse("閿欒,璇锋眰澶у皬鏈夐棶棰�.(-504)");
                     }
                     //璇诲彇鏈湴鏂囦欢瀛楄妭娴�
                     byte[] sourceDataByte = HdlFileLogic.getInstance().readFileByte(fileName);
                     if (sourceDataByte == null || sourceDataByte.length == 0) {
+                        HdlLogLogic.print("閿欒,鏈湴鎵句笉鍒版枃浠�,璇蜂笅杞藉啀璇�.(-505)", true);
                         return newFixedLengthResponse("閿欒,鏈湴鎵句笉鍒版枃浠�,璇蜂笅杞藉啀璇�.(-505)");
                     }
                     //鏍规嵁璇锋眰澶у皬鍒涘缓缂撳瓨鍖�

--
Gitblit v1.8.0