Before answering the question, I guess we all know that an HTTP GET request sends the data appended to the URL as query String, and that a HTTP POST request sends the data inside the body.
Now, about the GET, I don't share your 258 bytes
<<URIs cannot be longer than 256 characters. This was a limitation in some server implementations, and while servers continue to have limitations to prevent denial-of-service attacks, they are generally at least 4000 characters, and they evolve as the legitimate uses of application developers evolve.>>
...and is not me who is saying this:
And about the POST, as I stated before, the information is stored in the body of the HTTP request. Thus, if there is enough hardware performance, I guess* you can send for example a 1GB HTTP request (and even more). But then, while you are waiting to send it all, you can take this opportunity to think about what you did wrong. Because you must have done something wrong if you need to send such amount of data in an HTTP request.