¿El ???usuario puede definir la libertad?
Si.
o es suministrado por el HTML?
No. HTML no tiene nada que ver con eso. Lee abajo.
¿Es posible para mí definir el ???como abcdefg?
Si.
Si desea enviar los siguientes datos al servidor web:
name = John
age = 12
usar application/x-www-form-urlencodedsería así:
name=John&age=12
Como puede ver, el servidor sabe que los parámetros están separados por un ampersand &. Si &se requiere para un valor de parámetro, debe estar codificado.
Entonces, ¿cómo sabe el servidor dónde comienza y termina un valor de parámetro cuando recibe una solicitud HTTP multipart/form-data?
Usando el límite , similar a &.
Por ejemplo:
--XXX
Content-Disposition: form-data; name="name"
John
--XXX
Content-Disposition: form-data; name="age"
12
--XXX--
En ese caso, el valor límite es XXX. Lo especifica en el Content-Typeencabezado para que el servidor sepa cómo dividir los datos que recibe.
Entonces necesitas: