2016-08-08 37 views
-1

Ich habe einen Slash-Befehl für Slack erstellt und ich muss JSON-Daten an Slack senden. Dies ist der Code, den ich verwende, aber die Antwort wird von Slack als normaler Text behandelt.Send JSON von einem Schrägstrich Befehl mit PHP

$data = "payload=" . json_encode(array(
        "content-type" => "application/json", 
        "text"   => "a message", 
        "response_type" => "ephemeral", 
        "username"  => "user", 
        "icon_emoji" => ":icon:"     
     ),JSON_UNESCAPED_SLASHES); 

echo $data; 

Fehle ich etwas?

+4

Vielleicht haben Sie das richtige JSON-Format verpasst? –

Antwort

0

Es scheint, dass ich meine JSON-Datei nicht nach SLACK-Konventionen erstellt habe. Es sollte nicht den Payload-Parameter haben, der nur für eingehende Web-Hooks verwendet wird. Die PHP-Seite sollte diese Zeile enthalten: header('Content-Type: application/json');

Die Antwort slash Befehl gebaut werden sollte wie folgt:

$data = json_encode(array(
       "content-type" => "application/json", 
       "text"   => "a message", 
       "response_type" => "ephemeral", 
       "username"  => "user", 
       "icon_emoji" => ":icon:"     
    ),JSON_UNESCAPED_SLASHES); 

echo $ data;