Idempotent - A function, is idempotent if, whenever it is applied twice to any element, it gives the same result as if it were applied once. The idempotent method can be safely repeated.
POST method is considered non-idempotent. The reason is that the POST is supposed to post data to the server, which means it may be used to save the data in persistent location OR to do some action based on that posted data.
Similarly, GET is NOT supposed to update data, but to get data, although we can(and we do) implement GET to update data, by posting data using query
string. So, GET may sometimes behave non-idempotently.