Not quite sure what you are doing.
"But I can't send it in GET method from the command line in my server" A VIEWSTATE can be HUGE, even 5KB or 10KB! Your command line buffer is probably a lot smaller than that! Maybe 1KB? Anyway I figure that VIEWSTATE is just too long to pass around as a command line parameter..it could just get truncated independent of what Perl can or cannot do. Past that, the VIEWSTATE is in general a dynamic thing that changes. I've not seen something that passes this around as a command line parm, hence my confusion. Yes, Post method can send a humongous thing.
I would suggest that you post some code. Make the example as simple as possible to illustrate the behavior.