2017-03-07 5 views
0

Ich sende einige JSON-Daten mit Knoten JS und Curl. Ich verwende diese Syntax speziell, um die maximale Puffergröße zu erhöhen, aber ich weiß nicht, wie ich meine Daten in PHP erhalten soll.So lesen Sie POST-Daten von Knoten JS nach PHP

NodeJS

var a = (JSON.stringify({key1: "val1", key2 : "val2"})); 
var exec = require('child_process').exec; 

var execute = function(command, callback) { 
    exec(command, {maxBuffer: 1024 * 1000}, function(error, stdout, stderr) {callback(error, stdout);}); 
}; 

execute("curl -X POST -H 'Content-Type: application/json' -d '" + a +"' 'https://www.e-cotiz.com/api-payment-test/export/test.php'", function(error, stdout, stderr) { 
    // if(err) throw err; 
    console.log('stdout: ' + stdout); 
    console.log('stderr: ' + stderr); 
    if (error !== null) { 
    console.log('exec error: ' + error); 
    } 
}); 

PHP

<?php 
    $headers = apache_request_headers(); 

    $jsonStr = file_get_contents("php://input"); 
    $data = json_decode($jsonStr,true); 

    print_r($data); 
?> 

Ich habe zwei Fragen:

  • meine JS-Code und die Syntax sind JSON korrekt zu senden?
  • Wie kann ich meinen PHP-Code ändern, um meine Daten zu erhalten?
+0

print_r ($ _ ANFORDERUNG) – Dherya

Antwort

0

Nicht ganz sicher, wie es von Knoten funktioniert, aber vorausgesetzt, Ihr a Variable ein Objekt war, das so aussah ...

var a = { 
    key1: 'val1', 
    key2: 'val2' 
}; 

Dann würde PHP die Informationen wie so Zugang ...

$value1 = $_POST['a']['key1']; 
$value2 = $_POST['a']['key2']; 
Verwandte Themen