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
Uh oh!
There was an error while loading. Please reload this page.
-
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