php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 13-12-2011, 08:18
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard API Immowelt benutzen

Guten Morgen,

seit gestern versuch ich mich an der API von Immowelt. Die Doku dazu hab ich und konnte raufinden, dass es sich um einen WSDL-Link handelt, den man dann mit SOAP aufrufen muss.
PHP-Code:
$myImmo=new SoapClient ("http://api.immowelt.de/WebServices/EstateService.asmx?WSDL"); 
Leider fehlt in der Doku ein Schnippsel, wie man sich mit dem beantragten API-Key dort anmelden muss. Also, ich weiß weder genau den Befehl noch die Parameter, die ich übergeben muss.

Mail vom API-Support sagt, dass sie keinen Sample-Code zur Verfügung stellen können/wollen.

Kann mir hier jemand weiterhelfen?

Danke und Gruß
Michael

PS: SOAP ist natürlich aktiviert, ich nutze PHP 5.3.8
Mit Zitat antworten
  #2 (permalink)  
Alt 13-12-2011, 08:33
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Der SoapClient kennt die Methoden __getFunctions() und __getTypes().
Diese sagen dir alles, was du wissen musst.
__________________
Wir werden alle sterben
Mit Zitat antworten
  #3 (permalink)  
Alt 13-12-2011, 08:50
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

yo, das wußt ich scho, ich bekomm auch alle Functions angezeigt und die stehen ja auch in der Doku. ABER, ich muss irgendwie einen Key übergeben um mich zu authen. Jetzt kommt immer:

Code:
Fatal error: Uncaught SoapFault exception: [soap:Server] Access denied in D:\www\www7\demo
\immotest.php:6 Stack trace: #0 D:\www\www7\demo\immotest.php(6): SoapClient->__call('getList', Array) #1 
D:\www\www7\demo\immotest.php(6): SoapClient->getList('108') #2 {main} thrown in D:\www\www7\demo
\immotest.php on line 6
Gruß
Michel

Geändert von Lengen1971 (13-12-2011 um 09:57 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 13-12-2011, 09:08
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Dann weißt du mehr über den Service als ich.
Und damit endet meine Hilfe hier.
__________________
Wir werden alle sterben
Mit Zitat antworten
  #5 (permalink)  
Alt 13-12-2011, 09:32
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 623
streuner ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi,

suchst Du das?

PHP-SDK-Tutorial

mfg streuner
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"
Mit Zitat antworten
  #6 (permalink)  
Alt 13-12-2011, 09:47
ezkimo
 Registrierter Benutzer
Links : Onlinestatus : ezkimo ist offline
Registriert seit: Apr 2005
Ort: Beckum / Westf.
Beiträge: 279
ezkimo befindet sich auf einem aufstrebenden Ast
ezkimo eine Nachricht über ICQ schicken
Standard

Brich mal Deine Fehlermeldung um! Horizontal scrollen zu müssen ist hier im Forum der Tot Deiner Frage!

Wenn der Webservice keine entsprechende Funktion zur Authentifizierung zurück gibt, schaue mal in der PHP Dokumentation nach SoapHeader. Steht aber auch in der immowelt Dokumentation im Abschnitt 2.2 Authentifizierung mittels API-Schlüssel.
__________________
MM Newmedia | MeinBlog
Mit Zitat antworten
  #7 (permalink)  
Alt 13-12-2011, 09:59
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

danke für die Antworten.

@streuner: das ist Immoscout24, das hatte ich schonmal, aber unsere Kundin hat immowelt. Hier gibt´s keinerlei Sample-Codes. Nur paar C#-Aufrufe, aber auch ohne den Auth-Teil.

@ezkimo: sry, ist umbrochen.

Freu mich über weitere Hilfe.

Gruß
Michel
Mit Zitat antworten
  #8 (permalink)  
Alt 13-12-2011, 10:17
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

@ezkimo: zu Punkt 2.2: hab ich scho gesehen, aber ich find in der ganzen PHP-Doku nix über ApiAuthentication oder ListAuthentication. Auch die Soap-Functionlist bringt nichts, was so heißt.

Die SoapHeader hab ich mir angesehen, aber hier ist auch nicht die Rede von irgendeiner Authentifizierung.

Gruß
Michel
Mit Zitat antworten
  #9 (permalink)  
Alt 13-12-2011, 10:24
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

das steht unter 2.2, kann mir jemand erklären, was das bedeutet?

Zitat:
2.2. Authentifizierung mittels API-Schlüssel
Für den Zugriff auf die WebServices zum Abfragen der Daten wird eine
Authentifizierung benötigt. Dies geschieht in Form eines API-Schlüssels, den Sie
von uns erhalten. Momentan sind somit folgende Dienste nur mit einem APISchlüssel
erreichbar.
API Immowelt benutzen-soap.jpg
• LocationService benötigt ListAuthentication
• EstateService benötigt ListAuthentication
• EstateExpose benötigt ExposeAuthentication
Mit Zitat antworten
  #10 (permalink)  
Alt 13-12-2011, 10:32
ezkimo
 Registrierter Benutzer
Links : Onlinestatus : ezkimo ist offline
Registriert seit: Apr 2005
Ort: Beckum / Westf.
Beiträge: 279
ezkimo befindet sich auf einem aufstrebenden Ast
ezkimo eine Nachricht über ICQ schicken
Standard

Du solltest auch immer einen Blick in die User Kommentare in der PHP Dokumentation werfen. Schau mal hier: PHP: SoapClient - Manual

Eventuell hilft Dir das weiter. Alternativ könntest Du auch den Support von immowelt befragen. Das würde sicherlich schneller gehen, als uns hier schätzen zu lassen, wo das Problem liegen könnte.
__________________
MM Newmedia | MeinBlog
Mit Zitat antworten
  #11 (permalink)  
Alt 13-12-2011, 10:48
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

ja, die api@immowelt.de hab ich natürlich als erstes befragt. Die wollen oder können mir keinen Sample-Code geben und auf den Fehler kam keine Antwort mehr.

Ich bin jetzt schon zwei Stunden in der PHP-Doku mit User-Kommentaren. Ich find leider nichts, was mir hilft, mich zu authen.

Gruß
Michel
Mit Zitat antworten
  #12 (permalink)  
Alt 13-12-2011, 12:10
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

@ezkimo: ihr müßt übrigens keine Schätzungen abgeben, ich hätte gehofft, jemand hat die API schonmal benutzt und kann mir sagen, wie ich mich authen muss.

Gruß
Michel
Mit Zitat antworten
  #13 (permalink)  
Alt 14-12-2011, 09:04
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

nun, gott-sei-dank hat mein Kollege eine Typo3-Extension gefunden, dieses t3x Packet kann man entpacken und die PHP-Dateien durchsuchen. Tatsächlich waren die gesuchten Befehle drin, da wär ich NIE drauf gekommen.

Mit etwas anpassen geht die Geschichte nun mit Authentifizierung.

Hier die gesuchten Zeilen:
PHP-Code:
$immo=new SoapClient("http://api.immowelt.de/WebServices/EstateService.asmx?WSDL",array('trace' => true'exceptions' => true));
$apikey "< mein API-Key >";
$header = new SoapHeader('http://immowelt.de/services''ListAuthenticationHeader', array('ApiKey' => $apikey)); 
Was z. B. nirgends in der Doku oder den Mails, die von Immowelt kommen, steht, ist der Paramter 1 von SoapHeader, der 'namespace'.

Und dann der erste Abfrageversuche:
PHP-Code:
$estateParameter[] = array('Key' => 'EType''Value' => '1,2,3,4,5,6,7,8,10,11,12,13,15,16,17,19');
$getEstateListParam = array('GeoID' => '108',
                
'parameter' => $estateParameter,
                
'CurrentPage' => 1,
                
'PageSize' => 4);
$response=$immo->__soapCall("getList", array('parameters'=>$getEstateListParam), NULL,$header); 
Gruß
Michael
Mit Zitat antworten
  #14 (permalink)  
Alt 14-12-2011, 09:05
KeinenPlan
 Registrierter Benutzer
Links : Onlinestatus : KeinenPlan ist offline
Registriert seit: Aug 2006
Beiträge: 3
KeinenPlan ist zur Zeit noch ein unbeschriebenes Blatt
Exclamation

Hallo,
hm ich versuche mal mein Bestes um Dir zu helfen:
Die entsprechenden Seiten auf Immowelt hast Du Dir schon durchgelesen?
Also zum Beispiel die API-FAQs ?!

Ich überlasse Dir mal folgenden Codeschnipsel, evtl kannst Du ja was damit anfangen ;-)
Code:
$client = new SoapClient(“http://api.immowelt.de/WebServices/EstateService.asmx?WSDL”);                                              
$authHeader = new SoapHeader(‘http://immowelt.de/services’, ListAuthenticationHeader, array('ApiKey' => ‘APIKEY’));                                     
$params = array('params' => ‘value’);                                   
$result =  $client->__soapCall(‘METHODENNAME’, array('parameters' => $params), NULL, $authHeader);
Hat Dir das geholfen??
Mit Zitat antworten
  #15 (permalink)  
Alt 14-12-2011, 09:30
Lengen1971
 Registrierter Benutzer
Links : Onlinestatus : Lengen1971 ist offline
Registriert seit: Oct 2003
Beiträge: 57
Lengen1971 ist zur Zeit noch ein unbeschriebenes Blatt
Lengen1971 eine Nachricht über ICQ schicken
Standard

Hi,

ja, dein Code-Schnippsel hätte mir weitergeholfen, aber gestern am Spätnachmittag konnt ich diesen in besagter Typo3-Ext. finden.

Die API-FAQ und die Doku als PDF sind (fast) unbrauchbar, kann mir vorstellen, dass ein Vollprofi-Programmierer das schon hätte rausfinden können. Ich als Hinterhof-Coder nehm nächstes Mal wieder immoscout24, deren API ist super dokumentiert und ein gut kommentiertes Beispielscript ist auch dabei.

Danke trotzdem für eure Mühnen
Gruß
Michael
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Programmierer gesucht: Google API, Ebay API maxi5000 Archiv / Trash 1 21-04-2008 12:38
API Specification gruenspan ASP, PERL, CGI, C und alles andere 1 20-01-2007 16:03
overflow benutzen Scotch HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 1 23-02-2006 09:47
Sessionfunktionen benutzen maffy Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.) 2 04-11-2004 09:16
Klasse benutzen firat PHP Developer Forum 3 02-10-2002 19:58

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:00 Uhr.