Sehr aufgeregt, meine erste Frage zu StackOverflow zu stellen. Ich habe mich darauf verlassen, um mir selbst im Laufe der Jahre viel beizubringen!
Meine Frage ist das. Ich bekomme den folgenden Fehler, wenn ich versuche, eine Mail über Mandrills API zu senden:
%Vor%Der Code, der folgt, ist, was ich verwende, um zu versuchen, die Mail zu senden:
%Vor%Was den Validierungsfehler in der Nachricht verursachen könnte. Ich stelle meinen API Schlüssel zur Verfügung, UND es ist gültig!
Hoffe, dass jemand in der Lage ist zu helfen, und danke, dass ihr hier im Allgemeinen WUNDERBAR seid!
Danke!
Sie können auch nur Arrays verwenden und PHP die JSON-Codierung für Sie behandeln lassen. Dieser spezielle Fehler tritt häufig auf, wenn der JSON aus irgendeinem Grund ungültig ist. So könnten Sie zum Beispiel Ihre Parameter wie folgt einstellen:
%Vor% Sie können auch json_decode
verwenden, um die Antwort bei Bedarf zu analysieren.
Bansis Antwort hat für Dan B funktioniert, aber wenn jemand anders das gleiche Problem hat, ist es gut zu überprüfen, ob der Inhalt Sonderzeichen hat (Akzente, Umlaute, Cedillas, Apostrophe usw.). Wenn das der Fall ist, könnte die Lösung utf8 den Text kodieren:
%Vor% Ich weiß nichts über Mandrill, aber Ihre $content
-Zeichenkette hat doppelte Anführungszeichen "
und Ihr Trennzeichen in $postString
ist ebenfalls doppelte Anführungszeichen. Dies wird in jeder Sprache brechen. Sie müssen die doppelten Anführungszeichen in der $content
, wie von mandril benötigt, entziehen.
"html": "' . $content . '",
wird in
Versuchen Sie
%Vor%Anstelle von
%Vor%Sie müssen auch neue Zeilen aus dem HTML-Code entfernen:
$content = trim(preg_replace('/\s+/', ' ', $content));
Habe mit Dans Curl-Setup experimentiert, um html-angereicherte Nachrichten an Mandrill zu senden, aber diesmal mit html im Array template_content: [] der Nachricht / send-template.json api.
Was mir auffiel war, dass dieses Setup (von Bansi korrigiert) in der Mandrill-Testseite zu funktionieren schien: Ссылка
Aber in meinem PHP-Skript habe ich diesen sturen You must specify a key value
-Fehler erhalten. Dank dieses Threads löste ich das Problem, indem ich utf8 als Zeichensatz hinzufügte die Anforderungsheader: