Or if the request has side effects, which GET requests are not supposed to per the HTTP RFCs.
[Edit:] > The point is that GET is not supposed to change the information stored on the server side.
The RFCs for HTTP USAGE are guidelines that are less about utility and more of an interoperability dream that was never realized. There's nothing sancrosanct about them. There have been DECADES of usage contrary (eg medical, gamedev, advertising, ERP, etc). At some point people realize it's bikeshedding issue that's more trouble than it's worth.
"Side effects" probably isn't the best term for what I meant. The point is that GET is not supposed to change the information stored on the server side.