Java 使用八位字节流读取NanoHttpd post中的字节

Java 使用八位字节流读取NanoHttpd post中的字节,java,android,inputstream,datainputstream,nanohttpd,Java,Android,Inputstream,Datainputstream,Nanohttpd,我在Android中使用Nanohttpd创建一个应用程序,从同一应用程序的其他实例接收字节。在我的例子中,我的应用程序正常工作并将数据发送到web服务,但是当我尝试在这个应用程序的两个实例之间发送数据时,当我调试时,我看到了奇怪的字节,例如垃圾或不同的编码。我尝试使用NanoHttpd的InputStream 我的代码使用java代码发送数据: public class MainTest { public static void main(String[] args) {

我在Android中使用Nanohttpd创建一个应用程序,从同一应用程序的其他实例接收字节。在我的例子中,我的应用程序正常工作并将数据发送到web服务,但是当我尝试在这个应用程序的两个实例之间发送数据时,当我调试时,我看到了奇怪的字节,例如垃圾或不同的编码。我尝试使用NanoHttpd的InputStream

我的代码使用java代码发送数据:

public class MainTest {
    public static void main(String[] args) {
        try {
            URL url = new URL("http://192.168.0.215:8080");
            HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection();
            httpConnection.setUseCaches(false);
            httpConnection.setDoInput(true);
            httpConnection.setDoOutput(true);
            httpConnection.setChunkedStreamingMode(4096);
            httpConnection.setConnectTimeout(1000 * 5);
            httpConnection.setReadTimeout(1000 * 5);
            httpConnection.setRequestMethod("POST");
            httpConnection.addRequestProperty("Content-Type", "application/octet-stream");
            httpConnection.addRequestProperty("Transfer-Encoding", "chunked");
            httpConnection.addRequestProperty("Connection", "close");
            OutputStream out = httpConnection.getOutputStream();

            DataOutputStream dataOutputStream = new DataOutputStream(out);
            dataOutputStream.writeInt(37);
            dataOutputStream.close();
            httpConnection.getResponseMessage();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
在Android中,我想从上一个代码中读取字节,我的代码是:

@Override
        public Response serve(IHTTPSession session) {
            Method method = session.getMethod();
            try {
                if (Method.POST.equals(method)) {
                    DataInputStream in = new DataInputStream(session.getInputStream());
                    int value = in.readInt();
                    Log.d("nextValue: ", value); // expected 37
                } else {
                    return executeGet(session);
                }
            } catch (Exception ex) {
                return newFixedLengthResponse(Response.Status.INTERNAL_ERROR, NanoHTTPD.MIME_PLAINTEXT,
                        "SERVER MOBILE INTERNAL ERROR: : " + ex.getMessage());
            }
        }
我需要使用主java示例发送字节,有时我需要编写EUTF等,因为我有一个应用程序也可以这样工作