Ich versuche, das Creative SDK von Adobe in meine Ruby on Rails App zu implementieren.Hochauflösendes Adobe Creative SDK von PHP in Ruby on Rails übersetzen
https://creativesdk.adobe.com/docs/web/#/articles/highresolution/index.html
Ich habe den erforderlichen Zugriff auf den hallo-res-API.
Die Beispiele, die sie haben, sind für PHP und Node.js, und ich versuche, eine Ruby on Rails-Version basierend auf dem PHP zu schreiben. Ich habe alles eingerichtet, in dem es die "authenticationURL" richtig aufruft, aber ich bekomme eine "Ungültige authenticationURL Antwort. Bitte überprüfen Sie die Formatierung der Antwort."
Ich bin neu Programmierung auf dieser Ebene und versuchte im Grunde, dies herauszufinden, indem Sie ein paar Fragen auf PHP & Ruby hier ebenso Websites wie http://www.phptoruby.com/. Hier
ist die PHP:
<!-- /getAuth -->
<?php
$apiKey = "apikey";
$apiSecret = "apisecret";
$salt = rand(0,1000);
$time = time();
$sig = sha1($apiKey . $apiSecret . $time . $salt);
$authObj = array(
"apiKey" => $apiKey,
"salt" => $salt,
"timestamp" => $time,
"encryptionMethod" => 'sha1',
"signature" => $sig
);
echo json_encode($authObj);
?>
Hier ist, was ich im Moment haben (mit meinem apikey und apisecret korrekt eingegeben):
require 'time'
require 'json'
require 'digest/sha1'
def get_auth
apiKey = 'apikey'
apiSecret = 'apisecret'
salt = "#{0 + rand(1000)}"
time = "#{Time.now.to_i}"
sig = Digest::SHA1.hexdigest('apiKey' + 'apiSecret' + 'time' + 'salt')
authObj = { :apiKey => 'apiKey',
:salt => 'salt',
:timestamp => 'time',
:encryptionMethod => 'sha1',
:signature => 'sig' }
print 'authObj'.to_json
render :fxb
end
Ich bin nicht sicher, ob print
verwendet, ist richtig hier? Oder wenn mein Problem ein Syntaxproblem ist ... Oder etwas ganz anderes.
Ist Ihr Problem gelöst? Ich bekomme auch den gleichen Fehler wie "Ungültige Authentifizierung URL Antwort. Bitte überprüfen Sie die Formatierung der Antwort.". Ich benutze C# und ich habe Zugang zu high res API auch. Erhob eine Beschwerde an Adobe, aber niemand reagierte.Auth Objekt ist gettin richtig in C# erstellt und ich habe die json mit kreativer Cloud Dokumentation Testen URL für Auth Objekt im Vergleich aber immer noch nicht funktioniere http://jsbin.com/xoxaqoropu/ – adang
Ok, ich habe für mich gelöst Problem. Nach dem Debuggen der minimierten Voliere js fand ich, dass meine getAuth Funktion eine korrekte json (auth) zurückgab, aber ich muss den Antwortheader hinzufügen, so dass die Voliere das auth json Objekt in Signatur, Zeitstempel analysieren kann. SO muss ich unten in der Methode getAuth hinzufügen, bevor ich json zurückgebe. Ohne es zu lesen, hat die Aviare den Auth JSON als String und nicht als Objekt gelesen und es konnte sie nicht analysieren. Antwort.Clear(); Response.ContentType = "application/json; charset = utf-8"; – adang