gpt4 book ai didi

java - 我如何从 Nanohttpd 提供外部 css、jpg 和 gif 文件(Nanohttpd 在普通电脑上运行,而不是在 Android 上运行)?

转载 作者:行者123 更新时间:2023-11-30 11:30:00 27 4
gpt4 key购买 nike

在 index.html 中,使用外部 css 和图像 src 的路径用于从文件夹请求 css 图像。然而,图像未加载且 css 样式未应用于页面。

import java.io.*;
import java.util.*;

/**
* An example of subclassing NanoHTTPD to make a custom HTTP server.
*/
public class HelloServer extends NanoHTTPD
{
public HelloServer() throws IOException
{
super(8080, new File("."));
}

public Response serve(String uri, String method, Properties header, Properties parms, Properties files) {

BufferedReader br = null;
String msg="";

try {

String sCurrentLine;

br = new BufferedReader(new FileReader("index.html"));

while ((sCurrentLine = br.readLine()) != null) {
//System.out.println(sCurrentLine);
msg = msg + sCurrentLine;
System.out.println(sCurrentLine);
}

} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
return new NanoHTTPD.Response( HTTP_OK, MIME_HTML, msg );
}


public static void main( String[] args )
{
try
{
new HelloServer();
}
catch( IOException ioe )
{
System.err.println( "Couldn't start server:\n" + ioe );
System.exit( -1 );
}
System.out.println( "Listening on port 8080. Hit Enter to stop.\n" );
try { System.in.read(); } catch( Throwable t ) {};
}
}

在 index.html 中,使用外部 css 和图像 src 的路径用于从文件夹请求图像但是。然而,图像未加载且 css 样式未应用于页面。

最佳答案

一旦您发回 HTML 文件,浏览器就会运行并继续请求其他资源——图像、JS 文件、CSS 等。您需要做的是查看“uri”参数,然后将告诉您需要将哪个文件发送回客户端。您需要根据请求的内容来确定文件名,而不是对“index.html”进行硬编码。

关于java - 我如何从 Nanohttpd 提供外部 css、jpg 和 gif 文件(Nanohttpd 在普通电脑上运行,而不是在 Android 上运行)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18030214/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com