Einfaches Webinterface zum Steuern über JSON RPC

  • Hallo,

    ich möchte gern ein einfaches Webinterface zum Steuern von XBMC erstellen. Das Grundgerüst steht bereits schon. Leider verstehe ich das Prinzip noch nicht ganz. Ich möchte beispielweise per GET oder POST einfache Befehle wie rechts, links, ok usw. per Javascript ausführen.

    Über den Browser funktioniert dieser Befehl tadellos, jedoch bei der Umsetzung mit Javascript scheitert es.

    Code
    http://127.0.0.1/jsonrpc?request={"jsonrpc": "2.0", "id": 1, "method": "Input.Right"}


    Es wäre sehr nett wenn mir jemand helfen könnte.

  • Danke schonmal für die Antwort. Wenn ich POST nehme muss ich ja die URL nicht encoden oder? Ich habs mal versucht hab aber irgendwo ein Fehler.

    Code
    function button_right(){
             $.post('http://127.0.0.1:80/jsonrpc','{"jsonrpc": "2.0", "id": 1, "method": "Input.Right"}');  
                }

    Einmal editiert, zuletzt von Smoon (19. Januar 2015 um 18:31)

  • "irgendwo ein Fehler" ist aber schon recht allgemein gehalten ;) Du wirfst (mit F12) erstmal den Dev-Modus im Browser an. Abhängig von "irgendein Fehler" kannst Du im Scriptbereich oder im Netzwerk/XHR-Bereich schauen.

    Der Reihe nach:
    (*) Syntax-Fehler?
    (*) Funktioniert der Button-Click nicht? als event via jQuery angelegt?
    (*) Funktioniert die Ajax-Sache nicht?

    (+) alert("hier achtung");
    funktioniert immer prima, um Codebereiche zu testen.

    Einmal editiert, zuletzt von chmee (20. Januar 2015 um 12:12)

  • Laut Firebug wird mir kein Syntax Fehler angezeigt. Der Button verweist per oneclick auf die Funktion button_right. Funktion wird auch aufgerufen (Alert wird angezeigt).
    Bei click auf den Button kommt ein Fehler:"NetworkError: 415 Unsupported Media Type - http://127.0.0.1/jsonrpc"
    Außerdem wird bei Firebug unter Netzwerk -> XHR -> XML folgender Fehler angezeigt:"XML-Verarbeitungsfehler: Kein Element gefunden Adresse: moz-nullprincipal:{e35479c4-c5c3-464e-a8bc-9c499c33ca2c} Zeile Nr. 1, Spalte 1:"

  • versuchs doch erstmal mit nem get(), bei nem post() könnte uU die Definierung der Post-Data weiterhelfen. Schau Dir nochmal die Beispiele bei jQuery an, besonders jene, die mit JSON-Daten zu tun haben, zB

    Code
    $.post( "test.php", { 'choices[]': [ "Jon", "Susan" ] } );
    // oder
    $.post( "test.php", $( "#testform" ).serialize() );


    (!) "XML-Verarbeitungsfehler: Kein Element gefunden" (da wird kein json erkannt, bin ich der Meinung)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!