Dies ist eine Erweiterung meines earlier question. Wenn wir eine SSJS Bibliothek DXL exportieren bekommen wir Ausgabe, die diese enthält:Kodierungsschema für SSJS-Bibliothek beim Export über DXL
<item name="$ServerJavaScriptLibrary" sign="true">
<rawitemdata type="1">
....ENCODED SSJS....
</rawitemdata>
</item>
Ich dachte vorher, dass das Codierungsschema Base64 hier verwendet. Aber nachdem ich erfolglos versucht habe, SSJS-Bibliothek zu importieren, denke ich, dass es nicht ist. Während der Suche fand ich, dass die type="1"
bezieht sich auf TYPE_COMPOSITE
während type="14
"bezieht sich auf Base64 (bitte korrigieren Sie mich, wenn ich falsch in diesem). Ich habe versucht, type="14"
in meinem XML-Fil, setzen Base64 codierten Code in rawitemdata
Tag und versuchte dann die Datei importieren. es erstellt SSJS Bibliothek in der Datenbank aber ihr Inhalt war leer.
ich this link gefunden, wo es durch die Codierung in Base64 ein Thema zu importieren, aber es prepends die codierte Zeichenfolge durch „YQAYAAAAAAA6AAAAAQAAAAAAAAAAAAAAYABMAAAAOgA6AAAAAAAAAAAA“. ich habe versucht, vorangestellt wird es in meinem codierten SSJS-Code und dann importieren Sie es aber immer noch nicht erfolgreich.
Welches Kodierungsschema sollte verwendet werden, damit ich die importieren kann SSJS-Code in meiner Datenbank?
Danke eine Tonne Sven! Dein Code hat funktioniert. Ich habe es auf meinem lokalen Rechner versucht und zu diesem Zweck musste ich die Verwendung von 'sessionAsSignerWithFullAccess' durch' session' ersetzen. Aber wenn ich die importierte Datei am Ende öffne, sehe ich 4 zusätzliche Zeichen - ein Sonderzeichen (ein schwarz gefülltes Quadrat), Leerzeichen und Zeichen von 's' und 'd'. Irgendwelche Ideen warum? Liegt es daran, dass ich das auf der lokalen Maschine ausführe? Ich konnte dies in Ihrem Blog nicht kommentieren, da es mir immer die Meldung FEHLER: Unlesbare CAPTCHA-Token-Datei anzeigt, obwohl Sie das richtige Wort für Captcha eingegeben haben. – Naveen
@Naveen: Danke für die Rückmeldung. Das letzte WP-Update hat das Captcha-Plugin beendet, es funktioniert jetzt wieder. Zu deiner Frage: Hmm, momentan kann ich die "Extra" -Zeichen am Ende nicht erklären, denn das ist der Code deiner SSJS-Bibliothek. Ist das ein generelles Problem für * jede * Bibliothek oder nur für ein bestimmtes? –
Nach ein bisschen Trial-and-Error fand ich eine interessante Beobachtung. Wenn ich versuche, eine Funktion wie 'test1 = function() {}' zu importieren. Dann gibt es kein Problem mit der importierten Skriptbibliothek. Aber wenn ich versuche, eine Funktion wie 'function test1() {}' zu importieren. Dann hat die importierte Skriptbibliothek am Ende einen speziellen Charakter. Ich weiß nicht warum! Der Fehler in der Ansicht "Probleme" zeigt diese Meldung "Lexikalischer Fehler in Zeile 17, Spalte 2. Aufgetreten:" \ u25a0 "(9632), nach:" "'. Irgendwelche Ideen warum?Außerdem konnte ich deinen Blog immer noch nicht kommentieren, da er mir jedes Mal, wenn ich versucht habe, die Nachricht "Spam gelöscht" zu zeigen. – Naveen