Forum: PC-Programmierung Ajax Anfrage an lokalen Server


von Dennis S. (sixeck)


Lesenswert?

Hey,

ich hab mir ein CrumbX1-NET V1.2 Ethernet Modul geholt, also eine Art 
Webserver mit steuerbaren ausgängen.

mehr info : 
http://www.chip45.com/products/crumbx1-net_avr_xmega_modul_board_atmega128d3_embedded_internet_ethernet_webserver_usb.php

bei dem kann ich via http://192.168.0.15/io?iPC3 den Status des Pins PC3 
abfragen - antwort auf die Anfrage -> PC3=0 . Also aus.

Jetzt würde ich das gerne per Ajax machen, Die frage ist nur wie geht 
das ?

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
<html>
3
<head>
4
 <title>Wikibooks-Ajax-Tutorial</title>
5
 <script type="text/javascript">
6
  function hol_datum(){
7
   if (window.XMLHttpRequest){
8
    myAjax = new XMLHttpRequest();
9
   }else{
10
    //Dieser Code wird als Fallback für den IE5 und IE6 benötigt, da diese die obrige Schreibweise nicht unterstützen.
11
    myAjax = new ActiveXObject("Microsoft.XMLHTTP");
12
   }
13
 
14
   myAjax.onreadystatechange=function(){
15
    if (myAjax.readyState==4 && myAjax.status==200){
16
     document.getElementById("output").innerHTML=myAjax.responseText;
17
    }
18
   };
19
 
20
   myAjax.open("GET","http://192.168.0.15/io?iPC3",true);
21
   myAjax.send();
22
  }
23
 </script>
24
</head>
25
<body>
26
 <input type="button" value="tu ajax" onClick="hol_datum()"><br>
27
 <div style="width:400px; border: 1px black solid;" id="output">.... noch nix ....</div>
28
</body>
29
</html>

so funktioniert das jedenfalls nicht, weiß jemand wieso nicht ?

von Sebastian L. (der_mechatroniker)


Lesenswert?

Das XMLHttpRequest-Objekt lässt aus Sicherheitsgründen nur Anfragen an 
den Host zu, von dem die Seite, in der es ausgeführt wird, geladen 
wurde.

von Dennis S. (sixeck)


Lesenswert?

kann man das umgehen ?

von Peter II (Gast)


Lesenswert?

Sebastian L. schrieb:
> Das XMLHttpRequest-Objekt lässt aus Sicherheitsgründen nur Anfragen an
> den Host zu, von dem die Seite, in der es ausgeführt wird, geladen
> wurde.

nein stimmt nicht.


siehe:
http://en.wikipedia.org/wiki/Same-origin_policy

folgenden muss nur eingetragen werden:

http://en.wikipedia.org/wiki/Cross-Origin_Resource_Sharing

 Access-Control-Allow-Origin

von Test (Gast)


Lesenswert?

Ansonsten jsonp zB mit mootools oder jquery
Ohne javascript framework macht das ganze keinen Spaß ;)

von Dennis S. (sixeck)


Lesenswert?

Test schrieb:
> Ansonsten jsonp zB mit mootools oder jquery
> Ohne javascript framework macht das ganze keinen Spaß ;)

JA JsonP ist mir auch schon in den sinn gekommen, aber hinbekommen tu 
ich das nicht wirklich :/ scheint irgendwie was gegen ip adressen zu 
haben -.-

von Dennis S. (sixeck)


Lesenswert?

Ok, hab es jetzt auf 2 Wegen geschafft ihn anzusteuern und auszulesen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.