2017-12-09 7 views
-1

Ich versuche, Benutzereingaben in MYSQL-Datenbank mit PHP zu speichern, so dass ich JSON-Daten von meinem Agenten in api.ai (Dialogflow) erhalten möchte. Ich habe die Webhook-Fulfillment-Funktion aktiviert und eine öffentliche API-URL in den Webhook-Tab eingefügt.Api.ai Webhook-Anruf fehlgeschlagen. Fehler: 500 Interner Server Fehler

Aber ich bin auf diesen Fehler "failed Webhook Aufruf Fehler.: 500 Internal Server Error" stecken

Ich möchte Benutzereingaben speichern und benutzerdefinierte Nachrichten von PHP-Code von Webhook zu senden. Ich habe diese Lösung an verschiedenen Orten gesucht, konnte sie aber nicht finden. Jede Hilfe wäre willkommen.

Vielen Dank im Voraus!

+1

Wenn ein Serverfehler aufgetreten ist, können Sie im Fehlerprotokoll des Servers nachsehen, warum der Fehler aufgetreten ist. Dies ist Teil der grundlegenden Tools, die Sie als Entwickler kennen sollten. –

+2

Veröffentlichen Sie keinen Code über Links zu Websites von Drittanbietern. Kopieren Sie alle relevanten Codes in die eigentliche Frage. Wenn dieser Link entfernt/geändert wird, ist die Frage für zukünftige Besucher nutzlos. –

+0

Vielen Dank @MagnusEriksson für den Vorschlag und ich werde es im Hinterkopf behalten. –

Antwort

0

Fehler: 500 Interner Serverfehler bedeutet, dass der Code falsch ist. Hier ist ein Beispielcode, mit dem Sie Ihren Code reparieren können:

<?php 
header("Content-Type: application/json"); 
ob_start(); 
$requestBody = file_get_contents('php://input'); 
$json = json_decode($requestBody, true); 

$text = $json['result']['resolvedQuery']; 
$response = json_encode(array(
     "source" => "webhook", 
     "speech" => $text, 
     "displayText" => $text, 
     "contextOut" => array() 
    )); 

ob_end_clean(); 
echo $response; 
?> 

Hoffe, dass hilft!

+0

Hallo @JacobCelestine danke für die Antwort und es hat gut funktioniert. –