Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将JSONObject从Android发送到Python_Android_Python_Json_Sockets - Fatal编程技术网

将JSONObject从Android发送到Python

将JSONObject从Android发送到Python,android,python,json,sockets,Android,Python,Json,Sockets,我有一个接受JSONObject的服务器和一个向服务器发送JSONObject的Android应用程序。问题是服务器不喜欢它接收的JSONObject的格式。谁能告诉我我做错了什么 Android客户端: try{ Socket s = new Socket("67.194.98.244",13375); ObjectOutputStream oos = new ObjectOutputStream(s.getOutputStream())

我有一个接受JSONObject的服务器和一个向服务器发送JSONObject的Android应用程序。问题是服务器不喜欢它接收的JSONObject的格式。谁能告诉我我做错了什么

Android客户端:

try{  
            Socket s = new Socket("67.194.98.244",13375);  
            ObjectOutputStream oos = new ObjectOutputStream(s.getOutputStream());
            org.json.JSONObject json = new org.json.JSONObject();
            json.put("order", id);
            oos.writeObject(json);
            oos.flush();
            oos.close();



        }catch(Exception e){
            e.printStackTrace();
        }
和python服务器:

class MyTCPServerHandler(SocketServer.BaseRequestHandler):
    def handle(self):
        try:


            data = json.loads(self.request.recv(1024).strip())
            # process the data, i.e. print it:

            for key, value in data.iteritems():
                with print_lock:
                    print key, value

                if key == 'order':
                    SubmitOrder(value,self)
                elif key == 'status':
                    getStatus(value,self)
                else:
                    with print_lock:
                        print "no order"




        except Exception, e:
            print "Exception while receiving message: ", e
以下是Android上的堆栈跟踪:

09-21 21:53:49.804: W/System.err(27827): java.io.StreamCorruptedException
09-21 21:53:49.804: W/System.err(27827):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1528)
09-21 21:53:49.804: W/System.err(27827):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
09-21 21:53:49.804: W/System.err(27827):    at com.austinn.hamster.Print.sendCommand(Print.java:173)
09-21 21:53:49.804: W/System.err(27827):    at com.austinn.hamster.Print$1$1.run(Print.java:92)
09-21 21:53:52.144: W/System.err(27827): java.io.StreamCorruptedException
09-21 21:53:52.144: W/System.err(27827):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1528)
09-21 21:53:52.154: W/System.err(27827):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
09-21 21:53:52.154: W/System.err(27827):    at com.austinn.hamster.Print.sendCommand(Print.java:173)
09-21 21:53:52.154: W/System.err(27827):    at com.austinn.hamster.Print$1$1.run(Print.java:92)

“不喜欢”没有帮助。请给出准确的错误消息和回溯(如果有)。“没有JSON对象可以被解码”,如果没有人回答;-),尝试从
json.loads()
调用中拉出
recv()
调用,这样您就可以打印接收到的字符串。啊,所以它在Android端正在消亡!很抱歉,我无能为力-但这可能解释了为什么Python方面没有得到任何合理的解析,嗯?