In selecdoo kannst du ein JSON-Datenmodell für jede Aktion erstellen und verwenden, die über das Händler-Panel und das Affiliate-Panel möglich ist. Du kannst das aktuelle JSON, das bei verschiedenen Aktionen aufgerufen wird, erhalten, indem du die Anfragen mit Tools wie Firebug debuggst.
Die JSON-Daten, die du durch Debugging erhältst, sollten URL-kodiert sein die Funktion urlencode() in PHP) und im D-Parameter an https://work.selecdoo.com/scripts/server.php gesendet werden. Du kannst entweder die GET- oder POST-Methode für die Anfrage verwenden, obwohl wir aus Sicherheitsgründen dringend empfehlen, POST zu verwenden.
Wenn du POST verwendest, sollte die Anfrage mit dem Content-Type-Header auf application/x-www-form-urlencoded gesetzt werden (die curl-Funktion in PHP macht dies automatisch, wenn POST verwendet wird). Wenn du ein schönes Array für die $data-Variable im untenstehenden Beispielcode erhalten möchtest, kannst du die Funktion json_decode($variable, true); auf das JSON anwenden, das du durch Debugging erhältst.
Ein Beispiel für das Erstellen und Senden einer Login-JSON-Anfrage in PHP:
<?php
$data = array("C"=>"Pap_Api_AuthService","M"=>"authenticate","fields"=>array(array("name","value","values","error"),array("username","merchantuser@test.com",null,""),array("password","xxxx",null,""),array("roleType","M",null,""),array("language","en-US",null,""),array("isFromApi","Y",null,""),array("apiVersion","",null,"")));
$encodedJsonData = 'D=' . urlencode(json_encode($data)); //encoded json data request
$url = 'https://work.selecdoo.com/scripts/server.php';
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $encodedJsonData);
$json_response = curl_exec($curl);
curl_close($curl);
echo ($json_response);
?>
Beispiel für das Erstellen und Senden einer Login-JSON-Anfrage mit CURL:
curl --location --request POST 'https://work.selecdoo.com/scripts/server.php' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'D={"C":"Pap_Api_AuthService","M":"authenticate","fields":[["name","value","values","error"],["username","MERCHANT@USERNAME.COM",null,""],["password","PASSWORD@1234",null,""],["roleType","M",null,""],["isFromApi","Y",null,""],["apiVersion","c278cce45ba296bc421269bfb3ddff74",null,""]]}'
"Die Klasse existiert nicht" oder "Ungültiges Format des Klassennamens oder Methodennamens"
Falls deine Anfrage nicht korrekt ist, kannst du eine Fehlermeldung wie folgt erhalten:
- {"e":"Class does not exist"}
- {"e":"Invalid format of class name or method name"}
Dies passiert üblicherweise, wenn:
- die JSON-Daten nicht korrekt kodiert sind
- sie nicht als POST-Parameter "D" hinzugefügt wurden
- tatsächlich ein falscher Klassenname oder Methodenname in deiner Anfrage verwendet wurde
- die Anfrage nicht mit dem Content-Type-Header auf application/x-www-form-urlencoded gesendet wurde
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.