Algemeen forum voor discussie over de website
#75719
Ik krijg een 403 fout, ik weet niet wat ik verkeerd doe, zie: https://weerstationafferden.nl/knmi/


Zo wordt die geplaatst in Wordpress:

<iframe src="https://weerstationafferden.nl/knmi.php" width="100%" height="500"></iframe>

Ik heb een eigen api aangevraagd bij KNMI en heb opendata api gebruikt...
#75725
@weerstation Afferden:

Het KNMI script met een cronjob aanroepen bijvoorbeeld elke 3 uur (direkt het php bestand in iframe gebruiken zal helaas niet werken....)
Er wordt dan een html bestand gedownload, DEZE in iframe plaatsen op je site
Dit bespaart API calls en vermindert de kans op een block vanwege teveel API calls
Let er wel op dat php uitgevoerd wordt in de map waarin het KNMI script staat omdat het script gebruikt maakt van een relatief pad en er anders geen bestand kan worden gedownload naar het opgegeven relatieve pad
In PLESK gebruik ik dan de volgende opdracht voor het KNMI script:

Cron job = een taak inroosteren

cd /var/www/vhosts/weerstation-noordbergum.nl/httpdocs/scripts/KNMI/warning && /opt/plesk/php/8.3/bin/php -q -f KNMI_warning.php

cd (change directory) naar de directory waar het uit te voeren script staat (&& = als dit lukt) voer dan php 8.3 uit -q= quiet mode, -f=voer file uit (KNMI_warning.php)

Cronjobs zijn reuze handig om regelmatig een script uit te voeren om data binnen te hengelen, ik gebruik het ook om grafiekbestanden te downloaden vanaf meteobridge server, dit om de laadtijd van de webpagina te beperken
#75729
waling schreef: 08 dec 2024, 13:20 In de bijlage mijn script om de verwachting op te halen.
Dit script wordt uitgevoerd bij het aanroepen van de link!
Geeft dus altijd het laatste bestand.
Maakt verder gebruik van dezelfde functies als het script van T.J.
Ik krijg de melding "Geen bestanden gevonden in de API response"
Moet ik nog iets wijzigen in je bestand?

Edit: Per ongeluk verkeerde API key gebruikt. Het werkt nu!

Mvrgr,
Oebel
#75735
Inmiddels is het mij nu ook gelukt de hiervoor geposte scripts werkend te krijgen.

Omdat ik een eigen webserver heb werkte het eerst niet.
Het bleek dat daarvoor nog één en ander geconfigureerd moest worden:

1. de webserver van http naar https omzetten.
2. om curl te kunnen gebruiken moest een certificaatbestand (cacert.pem) van www.curl.se worden gedownload en in de php-map worden gezet.
3. het pad naar dat bestand zetten bij curl.cainfo in php.ini.
4. webserver herstarten.

Gelukkig heeft ChatGPT mij hiermee de goede richting op geholpen...
#75737
reitsma1960 schreef:Ik krijg de melding "Geen bestanden gevonden in de API response"
Moet ik nog iets wijzigen in je bestand?

Edit: Per ongeluk verkeerde API key gebruikt. Het werkt nu!

Mvrgr,
Oebel
Dit heb ik ook, maar wat voor type api key heb je dan aangevraagd ?
Ik heb deze aangevraagd maar werkt niet - "API Name: Open Data API"
  • 1
  • 8
  • 9
  • 10
  • 11
  • 12