Ankündigung

Einklappen
Keine Ankündigung bisher.

Blog API (XMLRPC)

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Blog API (XMLRPC)

    Hi,

    Ich schreibe z.Z. an einen kleinen Blogsystem, das System würde ich gerne mit einer bekannten API ausstatten. Sowas wie Wordpress benutzt, also XMLRPC, zwar habe ich bei sf eine XMLRPC Implementierung für XMLRPC gefunden allerdings weiss ich nicht welche Funktionen ich bereitstellen muss. Kennt jemand diese Funktionen oder eine Dokumentation dazu ?

    mfg, Björn
    http://www.bsnx.net/php

  • #2
    ich verstehe die Frage nicht ganz.
    suchst du eine xmlrpc-bibliothek oder weist du nicht welche service du anbieten möchtest?
    wenn du es nicht weiss welche functionen du bereitstellen muss, dann brauchst du eigentlich überhaupt kein service zu implimentieren.

    der Protokol selbs ist in vergleich zu soap sehr simpel und ein XMLRPC server als auch Client kann man auch ohne speziele bibliotheken implementieren.
    http://www.php-center.de/phpschulung/xml-rpc/index.htm
    auch fertige api kannst du direkt bei PEAR bekommen.
    http://pear.php.net/package/XML_RPC
    Slava
    http://bituniverse.com

    Kommentar


    • #3
      Zitat von Slava
      ich verstehe die Frage nicht ganz.
      suchst du eine xmlrpc-bibliothek oder weist du nicht welche service du anbieten möchtest?
      wenn du es nicht weiss welche functionen du bereitstellen muss, dann brauchst du eigentlich überhaupt kein service zu implimentieren.
      Eine XMLRPC implementierung für php hab ich schon, nur weiss ich nicht welche Funktionen der Server bereitstellen muss. Klar sowas wie newPost etc. Nur welche Parameter sind da üblich was muss zurückgegeben werden ?
      Wordpress, metaWebBlog haben ja alle solche APIs.
      http://www.bsnx.net/php

      Kommentar


      • #4
        Zitat von xeon
        nur weiss ich nicht welche Funktionen der Server bereitstellen muss. Klar sowas wie newPost etc. Nur welche Parameter sind da üblich was muss zurückgegeben werden ?
        Wordpress, metaWebBlog haben ja alle solche APIs.
        ja, weil sie eine Idee gehabt haben wofür sie die Service einsetzen und genau das fehlt dir.
        sorry, aber mit gleichem erfolg kannst du mich jetzt fragen: "was will ich programmieren?"
        und ich habe leider kein Antwort dafür.
        Slava
        http://bituniverse.com

        Kommentar


        • #5
          Nun ich möchte meinen Blog API fähig machen...

          Als Beispiel auf der Webseite X gibt es eine Funktionen in einen Wordpress Blog zu posten. Dann muss man dort URL, Username und PW eingeben.
          Ich möchte das man dort auch die URL meines Blogs eingeben kann und das man dann von der Webseite X in meinen Blog Posten kann.

          Edit: Dafür muss ich natürlich die Funktionsnamen und Parameter kennen die z.B. Wordpress verwendet.
          http://www.bsnx.net/php

          Kommentar


          • #6
            warum muss du die funktionsnamen von Wordpress kennen?
            du kannst belibige sinnvole funktionsnamen sich selbst ausdenken und den anderen zur verfügung stellen.
            zbs
            sendMesage($benutzername,$password,$blog_id,$mesag e){}
            diese funktion muss auf die von client ankommende anfrage, die so aussieht

            POST /xmlrpc_server_script.php HTTP/1.0
            Host: $hostname
            Content-Type: text/xml
            Content-length: $laenge_von_xml


            <?xml version="1.0"?>
            <methodCall>
            <methodName>sendMesage</methodName>
            <params>
            <param>
            <value><string>$benutzername</string></value>
            </param>
            <param>
            <value><string>$password</string></value>
            </param>
            <param>
            <value><int>$blokid</int></value>
            </param>
            <param>
            <value><base64>base64_encode ($mesage)</base64></value>
            </param>
            </params>
            </methodcall>

            reagieren können, und zwar die in $HTTP_RAW_POST_DATA(muss in php.ini eingeschaltet sein) erhaltene xml-anfrage parst,
            benutzername und password vergleicht,
            Nachricht(mesage) mit base64 decodiert und in Blog mit dem ID =$blokid
            macht.
            wenn das gut gelaufen ist, dann sendest du zbs ein boolean in xml format an den client

            <?xml version="1.0"?>
            <methodResponse>
            <params>
            <param>
            <value><boolean>true</boolean></value>
            </param>
            </params>
            </methodResponse>
            das kannst du natürlich mit PEAR-php oder JSP oder auch mit Assembler machen.
            Der Protokol ändert sich dadurch nicht, auch wenn server in Java geschrieben ist und der Client in DotNet.
            einziges was der Client wissen muss ist
            //funktion zum eintragen von neuem Beitrag
            boolean sendMesage(string benutzername,
            string password,
            int blog-id,
            string mesage/*base64*/)
            ---------------
            Wenn du willst kannst du an die Leute, die keine erfahrung mit diesem service haben ein Tutorial anbieten und auch für XMLRPC geschriebene Bibliotheken verweisen.
            Mehr nichts.
            Slava
            http://bituniverse.com

            Kommentar


            • #7
              Nun weil halt Webseite X und so weiter alle nur Wordpress etc. unterstützen.
              Ich kann schlecht alle möglichen Webseitenbetreiber dazu bringen dann auch noch meinen Standard zu unterstützen.
              http://www.bsnx.net/php

              Kommentar


              • #8
                Zitat von xeon
                Nun weil halt Webseite X und so weiter alle nur Wordpress etc. unterstützen.
                Ich kann schlecht alle möglichen Webseitenbetreiber dazu bringen dann auch noch meinen Standard zu unterstützen.
                Standart ist nur Protokol!!!
                Es hat nur dann ein Sinn XMLRPC einzusetzen, wenn du für Andere Software, die mit PHP nichts zutun hat, dein Service anbieten willst.
                Wenn alle andere nur mit PHP auf dein server zugreifen, dann ist die ganze Idee mit Schiesserei auf Mücken zu vergleichen, da komunikation zwischen 2 PHP scripten auch viel simpler ablaufen kann.
                Slava
                http://bituniverse.com

                Kommentar


                • #9
                  Nun ich weiss ja nicht ob Webseite X nun php benutzt oder nicht, darauf habe ich keinen Einfluss. Ich möchte nur eine Blog API wie Wordpress, metaWeblog etc. zu verfügung stellen. Dafür brauche ich Dokumentation oder ein Sample.
                  http://www.bsnx.net/php

                  Kommentar


                  • #10
                    Über entfernte Kommunikation ist es völlig gleichgültig, ob nun dahinter PHP steckt oder nicht, weil ein Script auf ein entfernt liegendes Script sowieso nicht direkt zugreifen kann.

                    Zum eigentlich Thema: XMLRPC ist keine direkte Applikation, insofern gibt es auch keine (allgemeine) konkrete API. Im Großen und Ganzen bestimmst du selbst die API und jeder, der da drauf zugreifen will, muss sich eben nach dir richten. RPC (Remote Procedure Call) ist nur ein Verfahren, der es erlaubt entfernt liegende Funktionen aufzurufen. Welche und Wie, das bestimmt derjenige, der eine solche Schnittstelle bereit stellt (bei XMLRPC allerdings natürlich beschränkt auf XML als Eingabe bzw Ausgabesprache).
                    Nicht jeder Fehler ist ein Bug.

                    Kommentar


                    • #11
                      API liste
                      http://www.xmlrpc.com/directory/1568/implementations
                      Mehr kann man wirklich kaum was machen.
                      Slava
                      http://bituniverse.com

                      Kommentar


                      • #12
                        Da, glaub ich, hast du nun wirklich was falsch verstanden. Das ist die API vom xmlrpc intern, soweit ich das sehe. Glaube aber eher, dass es um die externe Schnittstelle geht (also was man per xmlrpc bereit stellt).
                        Nicht jeder Fehler ist ein Bug.

                        Kommentar


                        • #13
                          ???
                          ich wollte nur zusätzlich die Liste von fertigen Bibliotheken zeigen.
                          Die implimentation von Service, als auch Dokumentation von Service-funktionen bleibt weiter hin ihm überlasen.
                          Wenn er ein service anbietet, kann er auf eine API verweisen und mit diesem API ein paar beispiele zeigen. das zwingt aber die Clients in keinem fall diese bibliothek zu benutzen und Sie können auch mit Javascript auf sein Service zugreifen.
                          Slava
                          http://bituniverse.com

                          Kommentar


                          • #14
                            Das war meine Aussage
                            Nicht jeder Fehler ist ein Bug.

                            Kommentar

                            Lädt...
                            X