From 5d3efa4c93dde0cde474951e5310bb72ebbf4184 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 15:18:26 +0800
Subject: [PATCH] 2025年05月07日15:18:20 1.2.0

---
 app/src/main/java/com/hdl/photovoltaic/internet/HttpServer/MyNanoHttpServer.java |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 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..3cc1df8 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
@@ -25,7 +25,7 @@
 public class MyNanoHttpServer extends NanoHTTPD {
 
     //澹版槑鏈嶅姟绔� 绔彛
-    public static final Integer HTTP_PORT = 49152;
+    public static Integer HTTP_PORT = 49152;// 46219;
 
     public MyNanoHttpServer(String hostname, int port) {
         super(hostname, port);
@@ -44,6 +44,7 @@
         }
         return myNanoHttpServer;
     }
+
 
     @Override
     public Response serve(IHTTPSession session) {
@@ -78,30 +79,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)");
                     }
                     //鏍规嵁璇锋眰澶у皬鍒涘缓缂撳瓨鍖�
@@ -111,7 +119,7 @@
                     //鍝嶅簲瀹㈡埛绔�
                     Response response = newFixedLengthResponse(newByte);
                     response.addHeader("Content-Range", range + "/" + sourceDataByte.length);//浼熷崡闇�瑕佽繖涓瓧娈�
-                    HdlLogLogic.print("http鍥炲鏁版嵁===璇锋眰澶у皬-->" + range + "=====鏂囦欢澶у皬-->" + sourceDataByte.length, true);
+                    HdlLogLogic.print("http鍥炲鏁版嵁===璇锋眰澶у皬--" + range + "=====鏂囦欢澶у皬--" + sourceDataByte.length, true);
                     return response;
                 }
             }

--
Gitblit v1.8.0