XML API Probleme

Fragen Rund um den Quelltext.
carlos22
Beiträge: 0
Registriert: Do 6. Okt 2016, 13:07

XML API Probleme

Beitragvon carlos22 » Do 6. Okt 2016, 13:13

Die Dokumentation der XML API ist nicht sonderlich gut. Leider war es mir nicht möglich mit OpenSource Version 16.3 (heute installiert). Eine Adresse abzurufen. Was gibt es hier noch zu beachten? MIr war nicht ganz klar was mit "Remote Domain" gemeint ist und wofür diese gebraucht wird?

Weiterhin ist wenn ich in "Remote Domain" etwas eintrage, dann funktioniert die Seite "?module=firmendaten&action=edit" gar nicht mehr (blank page). Wenn ich diesen Wert wieder manuell aus der DB lösche, dann lädt die Seite wieder - es gibt jedoch kein Fehler in error_log etc.

Jemand eine Idee?

Code: Alles auswählen

function generateHash()
{
    
    $initKey = '<initKey>';
    $remoteDomain = '';
    $date = gmdate('dmY');
    $hash = "";

    for($i = 0; $i <= 200; $i++) 
        $hash = sha1($hash . $initKey . $remoteDomain . $date);
  
    return $hash;
}

Code: Alles auswählen

http://wawi/index.php?module=api&action=AdresseGet&hash=<hash>&id=5

sauterbe
Administrator
Beiträge: 6
Registriert: Mi 31. Dez 2014, 13:34

Re: XML API Probleme

Beitragvon sauterbe » Fr 7. Okt 2016, 15:50

Wir haben eine neue Version online gestellt. Bitte testen.

Lehrling
Beiträge: 0
Registriert: Do 27. Apr 2017, 05:31

Re: XML API Probleme

Beitragvon Lehrling » Mi 3. Mai 2017, 09:10

Moin Moin,

ich hab beim Aufruf der URL die meldung das mein Hash falsch ist obwohl ich die Remote Domain und den Init key richtig gesetzt habe.

Grüße

sauterbe
Administrator
Beiträge: 6
Registriert: Mi 31. Dez 2014, 13:34

Re: XML API Probleme

Beitragvon sauterbe » Do 4. Mai 2017, 04:46

kannst du dein beispiel hier reinkopieren?

Lehrling
Beiträge: 0
Registriert: Do 27. Apr 2017, 05:31

Re: XML API Probleme

Beitragvon Lehrling » Do 4. Mai 2017, 05:52

Moin Moin,

ja das kann ich tun.
Hier bitte der code:

Code: Alles auswählen

<?php
$hash = generateHash();
 
$xml = "<adresse>12</adresse>
        <username>TestUser</username>
        <type>admin</type>
        <activ>1</activ>
        <passwordmd5>e22a63fb76874c99488435f26b117e37</passwordmd5>
        <externlogin>1</externlogin>";
 
 
$output_xml = SendRequest("BenutzerCreate",$xml,$hash); 
 
function generateHash()
{
 
    $initKey = '12345';
    $remoteDomain = 'http://127.0.0.1';
    $date = gmdate('dmY');
    $hash = " ";   
 
	for($i = 0; $i <= 200; $i++) 
	$hash = sha1($hash . $initKey . $remoteDomain . $date);
 
    return $hash;
}
 
function SendRequest($methodname,$xml,$hash)
{
 
    $url = 'http://127.0.0.1/wawision/16.3/www/index.php?module=api&action='.$methodname.'&hash='.$hash;
 
    $xml = '<?xml version="1.0" encoding="UTF-8"?>
            <request>
                <status>
                    <function>'.$methodname.'</function>
                </status>
                <xml>'.$xml.'</xml>
            </request>';
 
    $data = array('xml' => $xml, 'md5sum' => md5($xml));
 
    // use key 'http' even if you send the request to https://...
    $options = array(
                   'http' => array(
                   'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
                   'method'  => 'POST',
                   'content' => http_build_query($data),
                   ),
               );
 
    $context  = stream_context_create($options);
    $result = file_get_contents($url, false, $context);
    return $result;
}
 
$obj = simplexml_load_string($output_xml);
echo "<pre>";
print_r($obj);
echo "</pre>";
 
?>
Hab selbst schon versucht bei $hash den generierten Hash einzufügen aber auch das hat nicht geklappt.
Außerdem ist mir aufgefallen das in der API Dokumentation zur Erstellung des hash man unter >Administration->Einstellungen-> API-Account gehen soll. Diese Punkt ist aber nicht in Open Source Version verfügbar. Um den zu erstellen musste ich unter Administration->Einstellungen->Grundeinstellung->API's

Grüße

Lehrling
Beiträge: 0
Registriert: Do 27. Apr 2017, 05:31

Re: XML API Probleme

Beitragvon Lehrling » Do 4. Mai 2017, 09:20

Nachtrag

nachdem ich die url angepasst habe und den hash eingegeben habe bekomme ich jetzt nicht mehr die Fehlermeldung "Falscher Hash" sondern die Fehlermeldung 5 >Falscher Schlüssel(id)<
wie kann ich das beheben / Woran liegt das?
Und vor allem was ist damit gemeint?

Grüße

sauterbe
Administrator
Beiträge: 6
Registriert: Mi 31. Dez 2014, 13:34

Re: XML API Probleme

Beitragvon sauterbe » Fr 5. Mai 2017, 05:01

es kann sein das die werte noch als GET übegeben werden müssen in 17.1 kann man alle id und numern etc bei edit auch als XML übergeben.


bzw. kommt der fehler bei dem BenutzerCreate Demo?

Lehrling
Beiträge: 0
Registriert: Do 27. Apr 2017, 05:31

Re: XML API Probleme

Beitragvon Lehrling » Fr 5. Mai 2017, 06:35

Moin Moin,

nun nachdem ich wieder versucht habe die URL aufzurufen bekomme ich witziger weise wieder die Fehlermeldung 2 falscher hash obwohl ich den hash auch schon neu generiert habe und alle Anpassungen gemacht habe.

Grüße

Lehrling
Beiträge: 0
Registriert: Do 27. Apr 2017, 05:31

Re: XML API Probleme

Beitragvon Lehrling » Fr 5. Mai 2017, 10:26

Moin,
also ich hab jetzt mal die api versucht vom Helpdesk GruppeCreate, da bekomme ich die meldung das es geklappt hat nur bei Benutzer create nicht.
Grüße

sauterbe
Administrator
Beiträge: 6
Registriert: Mi 31. Dez 2014, 13:34

Re: XML API Probleme

Beitragvon sauterbe » Mo 8. Mai 2017, 04:12

bei mir klappt das.

Ist die Version eventuell zu alt? denke ab 17.1 sollte es auf jedenfall passen.


Und die ID der Adresse muss es natürlich geben