2017-09-02 11 views
0

Ich verwende fetch api, um mit dem Server zu interagieren. Ich versuche Daten an den Server zu senden. mein Front-End-Code sieht wie folgt aus:Daten werden nicht mit fetch api an den Server gesendet.

<!DOCTYPE html> 
<html> 
<head> 
    <title> Fetch Testing </title> 
</head> 
<body> 
    <button id = "add"> Add </button> 

    <script> 
    document.getElementById("add").addEventListener("click", function(){ 
     var options = { 
     method: "POST", 
     headers: { 
      "Content-Type": "application/json" 
     }, 
     body: JSON.stringify({name: "george", email: "[email protected]"}) 
     }; 

     fetch("get.php",options) 
     .then(function(response){ 
     console.log(response); 
     }); 
    }); 

    </script> 
</body> 
</html> 

Und Code meines Server-Seite (genannt "get.php") sieht wie folgt aus:

<?php 
    echo var_dump($_POST); 
?> 

So wie Sie mich mit Eigenschaften schicke json sehen Name und E-Mail und ihre Werte, aber es scheint, dass nichts an den Server gesendet wird, weil das Drucken der Antwort null JSON und Null-Text gibt.

+0

Welche Reaktion in der Konsole? –

+0

Was Sie bekommen in 'echo json_encode ($ _ POST);' – C2486

+0

Es gibt viele Eigenschaften als Antwort, aber sowohl Json und Textfeld ist leer –

Antwort

0

Problem in Kopf war, in Content-type sollte ich

geschrieben haben

application/x-www-form-urlencoded;

statt

application/json

0

Stellen Sie die Überschrift reagierte auf json get.php:

header('Content-Type: application/json'); 
echo json_encode($_POST); 
+0

nein, es ist immer noch leer Array –

Verwandte Themen