Errore HTTP Error 403: Forbidden su invio dati database
Buongiorno,
ho un database su altervista a cui vorrei inviare i dati di un sensore di temperatura.
Vorrei inviarli con un file php :
import os
import smbus
import urllib.request
from urllib.request import urlopen
from datetime import datetime
import socket
import re
scusa il link corretto è http://chess64.altervista.org/Stazio...Hub/addata.php
che mi resituisce correttamente : No data posted with HTTP POST.
hai ragione anche su python ( sono alle prime armi ) .
Puoi darmi qualche indizio perchè mi ritorna Error 403: Forbidden ?
grazie. ciao.
Nel codice Python stai effettuando una chiamata HTTP GET: modificala in POST
verifica che l'URL sia corretto, quindi verifica che la chiamata che stai testando vada a buon fine (se dallo script non funziona, prova con strumenti dedicati a testare le API come Postman)
Una possibile spiegazione al 403 - Forbidden è che l'API richieda una qualche forma di autenticazione per l'inserimento dei dati che non le stai passando; avrebbe senso, altrimenti chiunque potrebbe effettuare una POST sul tuo sito e inserire dati fasulli
grazie....ho QUASI-risolto con Node_red .
Adesso riesco a connettermi al database......però mi aggiunge solo un record vuoto e il datestamp....
debbo capire come scrivere bene l'url nella http request...il problema adesso è scrivere nel campo temp :
così mi restituisce il record vuoto :
http://chess64.altervista.org/StazioneMeteo/Hub/addata.php?temp="{{0}}
ciao.
Devi fare riferimento alla documentazione delle API che stai usando. Lì sarà indicato chiaramente come deve essere strutturata una richiesta per inserire dei dati.
La mia intuizione è che questi vadano passati nel corpo della richiesta HTTP POST, non come parametri nell'URL.