POST /search geeft JSON. Bij een zoekopdracht die FTS5 niet accepteert komt er geen JSON terug maar de HTML-foutpagina van de site, met status 500.
Waargenomen bij een lege q, bij AND, bij stikstof AND, bij een ongepaarde haak (stikstof, bij een ongepaard aanhalingsteken "stikstof en bij NEAR(a. Dat zijn allemaal invoerfouten van de gebruiker, geen storingen van de server, en 500 zegt juist Internal Server Error (alhoewel meer API's een 500 teruggeven terwijl het een bad request hoort te zijn).
Reproductie
Waargenomen op 2026-08-14.
Ongeldige FTS5-invoer via de gewone zoekpagina:
https://berthub.eu/tkconv/search.html?q=AND&twomonths=false&soorten=alles
Ongepaarde haak:
https://berthub.eu/tkconv/search.html?q=(stikstof&twomonths=false&soorten=alles
Onvolledige NEAR:
https://berthub.eu/tkconv/search.html?q=NEAR(a&twomonths=false&soorten=alles
De metrics waaruit het aandeel 5xx blijkt:
https://berthub.eu/tkconv/metrics
Verwachting
Status 400 bad request met hetzelfde JSON-formaat als een geslaagd antwoord, aangevuld met een melding, zodat de
zoekpagina kan zeggen "deze zoekopdracht begrijp ik niet" in plaats van "er is iets misgegaan". De
foutafhandeling die er al is ({"ok": 0, "message": ...}) leent zich daar precies voor.
Een lege q hoort waarschijnlijk helemaal geen query te worden.
Alternatief
Documenteren dat 500 een invoerfout kan zijn.
POST /searchgeeft JSON. Bij een zoekopdracht die FTS5 niet accepteert komt er geen JSON terug maar de HTML-foutpagina van de site, met status 500.Waargenomen bij een lege
q, bijAND, bijstikstof AND, bij een ongepaarde haak(stikstof, bij een ongepaard aanhalingsteken"stikstofen bijNEAR(a. Dat zijn allemaal invoerfouten van de gebruiker, geen storingen van de server, en 500 zegt juist Internal Server Error (alhoewel meer API's een 500 teruggeven terwijl het een bad request hoort te zijn).Reproductie
Waargenomen op 2026-08-14.
Ongeldige FTS5-invoer via de gewone zoekpagina:
https://berthub.eu/tkconv/search.html?q=AND&twomonths=false&soorten=alles
Ongepaarde haak:
https://berthub.eu/tkconv/search.html?q=(stikstof&twomonths=false&soorten=alles
Onvolledige NEAR:
https://berthub.eu/tkconv/search.html?q=NEAR(a&twomonths=false&soorten=alles
De metrics waaruit het aandeel 5xx blijkt:
https://berthub.eu/tkconv/metrics
Verwachting
Status 400 bad request met hetzelfde JSON-formaat als een geslaagd antwoord, aangevuld met een melding, zodat de
zoekpagina kan zeggen "deze zoekopdracht begrijp ik niet" in plaats van "er is iets misgegaan". De
foutafhandeling die er al is (
{"ok": 0, "message": ...}) leent zich daar precies voor.Een lege
qhoort waarschijnlijk helemaal geen query te worden.Alternatief
Documenteren dat 500 een invoerfout kan zijn.