Ankündigung

Einklappen
Keine Ankündigung bisher.

API von AlfaDNS

Einklappen

Neue Werbung 2019

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

  • API von AlfaDNS

    Hallo @All,

    ich versuche zur Zeit die API von AlfaDNS in mein Script einzubinden. - Leider geht das nicht so wie ich es mir vorstelle.
    Ich bekomme keine Fehler-Ausgabe jedoch wird die Test-Ausgabe am Ende des Scripts ausgeführt.
    Der Support von Alfahosting kann/will mir nicht weiterhelfen. - Daher versuche ich es mal hier.

    PHP-Code:
    <?php
        $url 
    "https://dns.alfahosting.de/api/";
        
    $user "###USER###";
        
    $key "###KEY###";
        
    $uid mt_rand(100000999999);
        
    $command "soa.list";
        
    $msg $command "-" $uid;
        
    $hmac hash_hmac('md5'$msg$key);
        
    $soap = new SoapClient (null, array(    'location' => $url,
                                                
    'uri' => $url,
                                                
    'trace' => 1,
                                                
    'use' => SOAP_LITERAL,
                                                
    'style' => SOAP_DOCUMENT
                                                
    ));
        
    $params = new SoapVar('<?xml version="1.0"?><alfadns login="' $user '"><call command="' $command '" uid="' $uid '" auth="' $hmac '" /></alfadns>'XSD_ANYXML);
        try
            {
            
    $result $soap->__soapCall($params);
            }
        catch(
    Exception $e)
            {
            echo 
    "<b>".$e->getMessage()."</b><br />\n";
            echo 
    nl2br($e->getTraceAsString()) . "<hr>";
            }
        echo 
    $result;
        
    print_r($result);
        echo 
    "<br>\n > Ende des Scripts erreicht ....";
    ?>
    Hoffe es kann mir jemand helfen, anbei noch der Link zur Doku.

    Vielen Dank bereits im Vorraus.
    Liebe Grüße
    User011985

  • #2
    Lässt Du Dir die Fehler denn überhaupt anzeigen? Exceptions und Fehlermeldungen sind zwei paar Schuhe.
    Nutz mal das hier am Anfang Deines Scriptes:
    PHP-Code:
    error_reporting ( -);
    ini_set 'display_errors'true ); 
    Und verwende in Zukunft bitte PHP-Tags für PHP-Code!
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Warning: SoapClient::__soapCall() expects at least 2 parameters, 1 given in /home/api.mywi-24.de/httpdocs/test.php on line 20


      > Zeile 20:
      $result = $soap->__soapCall($params);


      Was für ein Parameter wird denn noch benötigt?

      Kommentar


      • #4
        http://de2.php.net/manual/de/soapclient.call.php
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          PHP-Code:
          <?php
               error_reporting 
          ( -);
              
          ini_set 'display_errors'true );
              
          $url "https://dns.alfahosting.de/api/";
              
          $user "###USER###";
              
          $key "###KEY###";
              
          $uid mt_rand(100000999999);
              
          $command "soa.list";
              
          $msg $command "-" $uid;
              
          $hmac hash_hmac('md5'$msg$key);
              
          $soap = new SoapClient (null, array(    'location' => $url,
                                                      
          'uri' => $url,
                                                      
          'trace' => 1,
                                                      
          'use' => SOAP_LITERAL,
                                                      
          'style' => SOAP_DOCUMENT
                                                      
          ));
              
          $params = new SoapVar('<?xml version="1.0"?><alfadns login="' $user '"><call command="' $command '" uid="' $uid '" auth="' $hmac '" /></alfadns>'XSD_ANYXML);
              try
                  {
                  
          $result $soap->__soapCall($command$params);
                  }
              catch(
          Exception $e)
                  {
                  echo 
          "<b>".$e->getMessage()."</b><br />\n";
                  echo 
          nl2br($e->getTraceAsString()) . "<hr>";
                  }
              echo 
          $result;
              
          print_r($result);
              echo 
          "<br>\n > Ende des Scripts erreicht ....";
          ?>

          FEHLER:
          Warning: SoapClient::__soapCall() expects parameter 2 to be array, object given in /home/api.mywi-24.de/httpdocs/test.php on line 20

          Kommentar


          • #6
            expects parameter 2 to be array, object given

            muss man dir das echt alles vorkauen?
            Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

            Kommentar


            • #7
              Nein das ist nicht das Problem doch wenn ich daraus ein Array mache geht es auch nicht, denn in der Doku von Alfahosting steht das es ein XML-Request sein muss.

              Kommentar


              • #8
                Wo ist die Doku zur API?

                Kommentar


                • #9
                  Ja, doch leider ist die Datei zum hochladen zu groß!

                  Hier versuche es mal als Link!

                  http://www.federhexe.de/dns-api-en.pdf

                  Kommentar


                  • #10
                    Das ist keine SOAP API... jetzt verstehe ich auch was gemeint ist mit "das es ein XML-Request sein muss".

                    Du musst das erzeugte XML als "normalen" HTTP request verschicken, z.B. per curl, und die Antworten selber parsen.
                    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                    Kommentar


                    • #11
                      Und wie siche ich eine "normalen" HTML-Reqest habe auch schon diesen Code versucht doch es kommt gar keine Ausgabe!

                      PHP-Code:
                      <?php
                           error_reporting 
                      ( -);
                          
                      ini_set 'display_errors'true );
                          
                      // API > durchführen
                              
                      $user "";
                              
                      $key "";
                              
                      $uid mt_rand(100000999999);
                              
                      $command "soa.list";
                              
                      $msg $command "-" $uid;
                              
                      $hmac hash_hmac('md5'$msg$key);
                              
                      $fp fsockopen("tls{https://dns.alfahosting.de/api/}"$errno$errstr30);
                              if(
                      $fp)
                                  {
                                  echo 
                      "Verbing hergestellt!<br>";
                                  }
                              else
                                  echo 
                      "Verbing fehlgeschlagen!<br>";
                              echo 
                      "<br>\n > Ende des Scripts erreicht ....";
                      ?>

                      Kommentar


                      • #12
                        Was soll da auch kommen? Du öffnest ein Socket, aber weder sendest du einen Request noch liest du ...
                        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                        Kommentar


                        • #13
                          Aber es musste doch entweder "Verbing hergestellt!" oder "Verbing fehlgeschlagen!" kommen!

                          Wie ich dann einen Befehl sende weiß ich auch nicht!

                          Kommentar


                          • #14
                            Wozu überhaupt fsockopen()? Für einen HTTP-Request reicht file_get_contents(). Und HTML ist was anderes als HTTP.

                            Möchtest du nicht erstmal ein paar Grundlagen lernen? HTTP-Wissen ist Grundvoraussetzung für die Webentwicklung.

                            Kommentar


                            • #15
                              Ich befinde mich in der Ausbildung und das ist ein Test den ich von meinem Ausbilder bekommen habe.
                              Soll in Foren/Blogs schauen das Orakel google befragen und Ihm am Mittwoch eine Lösung bieten.

                              Kommentar

                              Lädt...
                              X