2013-06-01 9 views
7

sto usando la libreria Requests for PHP POST alcuni dati JSON per un altro script PHP (sto usando il metodo Response :: JSON di laravel per generare l'output JSON:Accesso pubblicato i dati JSON in script php

public function postIndex() 
{ 
    $input = Input::get(); 
    $data = Response::json($input); 
    $url = 'http://mydomain.com/emails/events'; 
    $response = Requests::post($url, array('Content-Type' => 'application/json'), $data); 
    return $response->status_code; 
} 

Ho bisogno dello script sull'estremità ricevente (http://mydomain.com/emails/events) per decodificare ed elaborare il json, ma sto facendo fatica ad accedere ad esso. Ho impostato un semplice script di test che mi invia per email il contenuto di $ _POST, ma esce vuoto ogni tempo

$post_data = print_r($_POST,true); 
mail("[email protected]","post data",$post_data); 

Cosa sto facendo di sbagliato qui?

risposta

12

PHP non analizza JSON POST. Quindi, è necessario per ottenere dati post grezzi come questo:

$data = file_get_contents("php://input"); 

Info su php php wrappers

+0

Grazie ero in grado di farlo funzionare con che quindi utilizzando json_decode ero in grado di trasformarlo in un array. Ha funzionato come un incantesimo grazie. – user2684521