HTTP POST sending empty [object Object] and Undefined Values

I'd be surprised if this is doing what it looks like you expect:

client.println(postData.length() + "\r\n\r\n");

try:

client.print(postData.length() ) ;
client.println( "\r\n\r\n") ;

The documentation for the length() method of the String class is not detailed enough to use to determine what the return type is, but I guess it is not a String.