title: can't send pickle object from linux to windows through sockets
body: <p>I can't send pickle object from raspberry with Linux through socket as a client to an online windows server while I can send it from my computer without any problem. The weird thing that I can send the message length (the server receive the message length ) but can't send the pickle object and the server is stuck to the <code>while</code> loop after receiving that message.</p>
  <p>client code:</p>
  <pre><code> message = pickle.dumps(faceBlob)
  
   message_header = bytes(f&quot;{len(message):&lt;{HEADER_LENGTH}}&quot;, &quot;utf-8&quot;)
   client_socket.send(message_header + message)
  </code></pre>
  <p>server code:</p>
  <pre><code>try:
  
      # Receive our &quot;header&quot; containing message length, it's size is defined and constant
      message_header = client_socket.recv(HEADER_LENGTH)
  
      # If we received no data, client gracefully closed a connection, for example using socket.close() or socket.shutdown(socket.SHUT_RDWR)
      if not len(message_header):
          return False
  
      # Convert header to int value
      message_length = int(message_header.decode('utf-8').strip())
      fragments = []
      print(message_length)
      received_len = 0
      while received_len &lt; message_length:
  
  
          chunk = client_socket.recv(message_length - received_len)
          if not chunk:
              break
          fragments.append(chunk)
          received_len += len(chunk)
  
      data_arr = b&quot;&quot;.join(fragments)
  
  
      # Return an object of message header and message data
      return {'header': message_header, 'data': data_arr}
  except:
      return False
  </code></pre>