NanoHTTPD를 사용하여 Android에서 웹 페이지를 로컬로 호스팅하고 있습니다.NanoHTTPD가 다른 페이지를 표시하지 않습니다.
내 문제는 서버 내 사이트의 색인 페이지로 응답하지만 난 항상 인덱스 페이지로 응답합니다 때문에 과거의 모든 페이지를 탐색하는 방법을 알아낼 수 없다는 것입니다.
아무도 튜토리얼을 얻지 못했습니다. 아무 것도 찾을 수 없습니다. 감사합니다 :)
private class MyHTTPD extends NanoHTTPD {
public MyHTTPD() throws IOException {
super(PORT, null);
}
@Override
public Response serve(String uri, String method, Properties header, Properties parms, Properties files) {
Log.d("response", "URI:" + uri + " method: " + method + " header: " + header + " parms: " + parms + " files: " + files);
final StringBuilder buf = new StringBuilder();
for (Entry<Object, Object> kv : header.entrySet())
buf.append(kv.getKey() + " : " + kv.getValue() + "\n");
handler.post(new Runnable() {
@Override
public void run() {
hello.setText(buf);
}
});
//load the index page
String html = null;
InputStream is = getClass().getResourceAsStream("/com/me/pages/index.html");
byte[] b;
try {
b = new byte[is.available()];
is.read(b);
html = new String(b);
} catch (IOException e) { // TODO Auto-generated catch block
e.printStackTrace();
}
//return index as response
return new NanoHTTPD.Response(HTTP_OK, MIME_HTML, html);
}
}
아무도 신경 쓰지 않으면 입력 스트림의 끝에 URI를 첨부했습니다. 멋지고 간단합니다 :) – user1056798