0
0
Rest APIprogramming~5 mins

Safe methods vs unsafe methods in Rest API

Choose your learning style9 modes available
Introduction

Safe methods help you get data without changing anything. Unsafe methods change or delete data. Knowing the difference keeps your app safe and working well.

When you want to read information from a server without changing it.
When you need to update or delete data on a server.
When building a website that shows data but also lets users add or change it.
When designing APIs that should protect data from accidental changes.
When deciding which HTTP method to use for different actions in your app.
Syntax
Rest API
GET /resource
POST /resource
PUT /resource
DELETE /resource
PATCH /resource

Safe methods like GET do not change data on the server.

Unsafe methods like POST, PUT, DELETE, PATCH can change data.

Examples
This safe method fetches user data without changing it.
Rest API
GET /users/123
This unsafe method creates a new user named Alice.
Rest API
POST /users
{
  "name": "Alice"
}
This unsafe method deletes the user with ID 123.
Rest API
DELETE /users/123
Sample Program

This program shows a safe GET request that reads a post's title without changing anything. Then it shows an unsafe POST request that creates a new post on the server.

Rest API
import requests

# Safe method: GET request to fetch data
response_get = requests.get('https://jsonplaceholder.typicode.com/posts/1')
print('GET status:', response_get.status_code)
print('GET data:', response_get.json()['title'])

# Unsafe method: POST request to create data
response_post = requests.post('https://jsonplaceholder.typicode.com/posts', json={"title": "foo", "body": "bar", "userId": 1})
print('POST status:', response_post.status_code)
print('POST response:', response_post.json())
OutputSuccess
Important Notes

Safe methods can be repeated many times without changing the server.

Unsafe methods may change or delete data, so use them carefully.

Browsers and servers often treat safe and unsafe methods differently for security.

Summary

Safe methods like GET only read data and do not change anything.

Unsafe methods like POST, PUT, DELETE change data on the server.

Use the right method to keep your app safe and working correctly.