Es difícil decidir,
Actualmente estoy enviando datos mientras que el x-www-form-urlencoded con curl php lib conx-forma-www-urlencoded Vs JSON POST HTTP
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($this->arguments));
o
curl_setopt($curl, CURLOPT_POSTFIELDS, $this->arguments);
primera pregunta: segunda parece ser una mayor longitud del contenido, la primera solución es probablemente mejor?
Es práctico para los mensajes planas como:
{
"name": "John",
"token": "2121232145",
"code": "7",
"data": "Hello"
}
Pero también puedo tener un campo de datos que representan un objeto, en este caso yo estaba Enconding, pero haciendo eso (url que codifica una JSON) es terriblemente mensajes detallados y feo,
en el otro lado he intentado enviándolo como application/json de tipo de contenido
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($this->arguments));
el contenido de longitud es mayor para mensajes pequeños pero w ITH JSON incorporado, que es claramente mejor
Pero x-www-form-urlencoded también está cerca de los datos de formas tengo que enviar, excepto cuando un JSON está incrustado
No sería elegante de tener 2 differents los métodos de análisis de servlet dependen de los tipos de contenido, ¿hay otra opción?
CORTO: x-www-form-urlencoded. LARGO: realmente depende de qué tipo de datos envíes (objetos anidados complicados o solo algunos campos como en el ejemplo). También depende de qué vas a hacer con los datos enviados, ¿se analizará y procesará inmediatamente o se almacenará y luego se enviará al usuario tal como está (en formato json codificado)? – pinepain
@pinepain los datos se envían a un servidor de glassfish, se analizan e insertan en una base de datos de Cassandra, puede anidarse bastante así '' 'data': json_encode ({'text': '2klines ..', 'author' : 'me'}), 'id': '14141', 'palabras clave': json_encode ({[{'tag': ['blue', 'red']}, {'author': ['me']} }), ..} ' –
Usar la misma manera de hacer las cosas simplifica mucho. ¿Por qué no usar JSON en todas partes? Debido a PHP que trata datos de formulario como variables $ _POST/$ _ GET/$ _ REQUEST y datos JSON con aburrido file_get_contents ('php: // input'). No me gusta que el mundo gire alrededor de PHP. En Node.js es bastante simple y natural usar JSON en lugar de datos de formulario. –