Erreur avec les méthodes PUT de l'API #1016
Unanswered
cchabot-besse
asked this question in
Q&A
Replies: 3 comments 1 reply
-
Le method PUT devrait effectivement fonctionner. Je vais vérifier cela. As-tu essayé avec la méthode POST ? |
Beta Was this translation helpful? Give feedback.
0 replies
-
Voici un exemple en Python, cela fonctionne bien avec ma méthode PUT #!/usr/bin/python3
import requests
# Configuration des en-têtes HTTP
def get_headers(token=None):
headers = {
'accept': 'application/json',
'content-type': 'application/x-www-form-urlencoded',
'cache-control': 'no-cache',
}
if token:
headers['Authorization'] = f'Bearer {token}'
return headers
# URL de base de l'API
BASE_URL = "http://127.0.0.1:8000/api"
# Connexion à l'API
print("Login")
login_response = requests.post(
f"{BASE_URL}/login",
headers=get_headers(),
data={'email': '[email protected]', 'password': 'password'}
)
if login_response.status_code == 200:
token = login_response.json().get('access_token')
print("Connexion réussie. Token reçu.")
else:
print("Erreur lors de la connexion:", login_response.json())
exit()
# Récupération de la workstation avec ID=1
print("Get workstation ID=1")
get_user_response = requests.get(
f"{BASE_URL}/workstations/1",
headers=get_headers(token)
)
if get_user_response.status_code == 200:
workstation_data = get_user_response.json()['data']
print("Données de la workstation récupérées:", workstation_data)
else:
print("Erreur lors de la récupération de la workstation:", get_user_response.json())
exit()
# Mise à jour du nom de la workstation
workstation_data['Name'] = "Nestor"
print(f"Update workstation ID=1")
update_user_response = requests.put(
f"{BASE_URL}/workstations/1",
headers=get_headers(token),
data=workstation_data
)
if update_user_response.status_code == 200:
updated_workstation_data = update_user_response.json()
print("Workstation[1] mis à jour:", updated_workstation_data)
else:
print("Erreur lors de la mise à jour de la workstation:", update_user_response.json()) |
Beta Was this translation helpful? Give feedback.
1 reply
-
Il existe une protection contre les dénis de service (DoS) en standard dans Laravel. Pour éviter cette erreur, tu peux ajouter une |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Il y a une erreur systématique sur un PUT /api/logical-servers, et il semble que ce soit le cas plus généralement avec toutes les autres entités du modèle de données.
Method Not Allowed
Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException
The PUT method is not supported for route api/logical-servers. Supported methods: GET, HEAD, POST.
PHP 8.3.12 — Laravel 11.26.0
La documentation mentionne pourtant la possibilité d'utiliser la méthode PUT.
Beta Was this translation helpful? Give feedback.
All reactions