Problem med att hämta en token från traderas api

Trädvy Permalänk
Medlem
Plats
Malmö
Registrerad
Okt 2007

Problem med att hämta en token från traderas api

Jag försöker att få ett python program att använda sig av traderas api men har lite problem. Jag har lyckats få min registrerade app att få tillgång till mitt tradera konto. Problemet kommer när jag ska försöka hämta min token som jag behöver. Jag skickar ett envelope som ser ut som följande:

<CODE>
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Header>
<AuthenticationHeader xmlns="http://api.tradera.com">
<AppId>xxxx</AppId>
<AppKey>xxxxxxxxxxxxxxx</AppKey>
</AuthenticationHeader>
<ConfigurationHeader xmlns="http://api.tradera.com">
<Sandbox>0</Sandbox>
<MaxResultAge>0</MaxResultAge>
</ConfigurationHeader>
</soap12:Header>
<soap12:Body>
<FetchToken xmlns="http://api.tradera.com">
<userId>xxxxxx</userId>
<secretKey>xxxxxxxxxxxxxxx</secretKey>
</FetchToken>
</soap12:Body>
</soap12:Envelope>
</CODE>

Jag skickar det i terminalen i ubuntu med följande kod:

<CODE>
curl -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction:http://api.tradera.com/FetchToken" -d @message.xml -X POST http://api.tradera.com/v3/PublicService.asmx
</CODE>

Men jag får tillbaka ett svar som verkar helt tomt på en authorization token. Det ser ut som följer:

<CODE>
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body><FetchTokenResponse xmlns="http://api.tradera.com" />
</soap:Body>
</soap:Envelope>
</CODE>

Någon som vet vad jag gör för fel?

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2004

Vad säger dokumentationen? Inte så att den kommer som en header? Släng på ett "-v" till curl så att du ser headrar.

Skickades från m.sweclockers.com

WS: Antec P182B | FSP Aurum 500W | Asus P8Z77-V PRO | i5 3570k | 16GB DDR3 | GeForce 450GTS | Intel 320 80GB SSD | HDD 5TB | Asus Xonar DX | Arch Linux (x86_64) | Eizo EV2736W
HTPC: Philips 50PUS8804, Kodi samt extern usb-disk
Server: Raspberry Pi 3 model B+ | 1GB RAM | HDD 750GB | Arch Linux (armv7h)

Trädvy Permalänk
Medlem
Plats
Malmö
Registrerad
Okt 2007

Enligt dokumentationen ska svaret komma i xml format där själva token ska se ut så här<AuthToken>string</AuthToken> Jag provade att slänga på ett -v på curl men det hjälpte inte så mycket. Här står hur svaret ska se ut: https://api.tradera.com/v3/PublicService.asmx?op=FetchToken

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2004

Enligt deras dokumentation så ska du inte ange headern soapaction för soap 1.2 samt ange content-type application/soap+xml.

Skickades från m.sweclockers.com

WS: Antec P182B | FSP Aurum 500W | Asus P8Z77-V PRO | i5 3570k | 16GB DDR3 | GeForce 450GTS | Intel 320 80GB SSD | HDD 5TB | Asus Xonar DX | Arch Linux (x86_64) | Eizo EV2736W
HTPC: Philips 50PUS8804, Kodi samt extern usb-disk
Server: Raspberry Pi 3 model B+ | 1GB RAM | HDD 750GB | Arch Linux (armv7h)

Trädvy Permalänk
Medlem
Plats
Malmö
Registrerad
Okt 2007

@[vEX]: Har provat det också, jag får samma resultat oavsett om jag använder soap 1.1 eller 1.2.