Rolf B: Funktionsaufruf html + javascript

Beitrag lesen

Hallo Reschi,

und jetzt habe ich nach einem Blick in die tb_myeth.pdf auch verstanden, warum ich bisher nichts verstanden habe.

Der Webserver reagiert auf das ° Zeichen in Requests und Responses und führt dementsprechend Aktionen auf dem Controller aus oder stellt Informationen bereit. Ob das jetzt gutes Design ist oder ob man besser eine explizte URL für Get- und Set-Operationen erstellt hätte, bleibe dahingestellt.

Aber wenn man sich die Fußleiste des PDF anschaut und dort "© Laser & Co. Solutions GmbH – 11/2008" findet, dann bin ich beeindruckt, dass das Teil 18 Jahre auf dem Markt überlebt hat.

Beispielsweise findet man in exethlet.htm dies

var led="../allg/setpin.htm?myChangeCmd=%B0o"+pinnr+"%7E"+leds[pinnr-20]+"%B0";

Wenn man setpin.htm anschaut, steht da nur

<html><head>
<script language="JavaScript" type="text/javascript">
function onloadDo()
{
	parent.setOK();
}
</script>
</head><body onLoad="onloadDo();" style="background-color:green"></body></html>

setpin.htm tut nichts weiter als setOK im Parent-Dokument aufzurufen und ihm damit zu bestätigen, dass die Aktion durch ist.

Und dann folgt ein Abruf von exethled/eth_leds.htm. Schaut man sich das an, findet man obskures:

<html><head>
<script language="JavaScript" type="text/javascript">
var test="PPIN=20=°v20°;°c20°;°C20°\n"
+"PPIN=21=°v21°;°c21°;°C21°\n";
function onloadDo()
{
	parent.setStatus(test);
}
</script>
</head><body onLoad="onloadDo();" style="background-color:green"></body></html>

Was passiert, ist, dass der Webserver beim Ausliefern dieser Miniseite die diversen °...°-Sequenzen durch Werte des Controllers ersetzt und dadurch die setStatus-Methode der Webseite mit sinnvollen Werten aufgerufen wird.

Ich bin sicher, dass sich dieses krude iframe-Pingpong-Design durch moderne fetch-Techniken ersetzen lässt. Was für einen Anfänger kein Spaß ist. Oder gerade doch? Was AVM da gebaut hat, ist Material für Uralt-Browser.

Aber vermutlich sind die Wartezeiten, die in den Beispielen eincodiert sind, aber kein Zufall, der Mikrocontroller wird Zeit brauchen, um die Befehle zu verarbeiten und die Ersetzungen durchzuführen.

Rolf

--
sumpsi - posui - obstruxi