HTML form enctype

application/x-www-form-urlencoded

Когато енктайпа е application/x-www-form-urlencoded – праща данните все едно са енкоднати с urlencode()

Демек „plamen“ ‘georgiev’ го праща като %22plamen%22+%27georgiev%27

Aко имаш file поле за ъплоуд на файл – качва само името на файла, пак енкоднато все едно с urlencode()

Eто примерно request body:
fldName=%22plamen%22+%27georgiev%27&fldFile=somefilename.jpg&fldSubmit=Kachvai

multipart/form-data

Когато енктайпа е multipart/form-data – праща данните по съвсем друг начин.

Content-Type: multipart/form-data; boundary=–––––––––265001916915724 (някакъв номер, различен за всеки отделен request)

и после разделя стойностите на отделните полета със:

––––––––––265001916915724
Content-Disposition: form-data; name=“fldName“

„plamen“ ‘georgiev’
––––––––––265001916915724
Content-Disposition: form-data; name=“fldFile“; filename=“20170916_101204.jpg“
Content-Type: image/jpeg

ÿØÿájYÿ*§(€%$ЕРge4$@Т23r2rqХСАТ€§%€%$СА&%€УÿájY… и т.н…. някаква двоична чудесия…

text/plain

Когато енктайпа е text/plain – праща данните подобно на application/x-www-form-urlencoded но не енкоднати. На качен файл с „file“ поле му качва само името.

fldName=“plamen“ ‘georgiev’
fldFile=somefilename.jpg
fldSubmit=Kachvai

Достигам до извод, че ако искаш да качваш файл – само multipart/form-data, иначе качва само името на файла. И мотодът да е POST.

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *