Risposte:
Se capisco correttamente la situazione, stai solo passando i dati json attraverso il corpo http, invece dei application/x-www-form-urlencoded
dati.
Puoi recuperare questi dati con questo snippet:
$request_body = file_get_contents('php://input');
Se stai passando json, puoi fare:
$data = json_decode($request_body);
$data
quindi contiene i dati json è l'array php.
php://input
è un cosiddetto wrapper .
php: // input è un flusso di sola lettura che ti consente di leggere i dati grezzi dal corpo della richiesta. Nel caso di richieste POST, è preferibile utilizzare php: // input invece di $ HTTP_RAW_POST_DATA in quanto non dipende da speciali direttive php.ini. Inoltre, per quei casi in cui $ HTTP_RAW_POST_DATA non è popolato per impostazione predefinita, è un'alternativa potenzialmente meno dispendiosa in termini di memoria all'attivazione di always_populate_raw_post_data. php: // input non è disponibile con enctype = "multipart / form-data".
Inoltre puoi configurare extJs writer
con e invierà dati regolarmente (e, quindi, sarai in grado di recuperare i dati tramite e ).encode
: true
$_POST
$_GET
... i valori verranno inviati come parte dei parametri della richiesta invece di un post non elaborato (tramite documenti per la configurazione dell'encode di Ext.data.writer.Json)
AGGIORNARE
Anche i documenti dicono che:
L'opzione encode deve essere impostata su true solo quando viene definita una radice
Così, probabilmente, writer
's root
è richiesto config.
writer
la configurazione di root di? Potrebbe essere necessario. encode
funziona per me imageshack.us/f/32/20120308153201.png