Как вы прошлые публикации данных без значения имени для входов? - PullRequest
0 голосов
/ 31 октября 2009

Передача почтовых данных с использованием cURL требует ввода имени. Тем не менее, мне было интересно, как вы можете это сделать, если вход не был назначен имя?

curl -d "user=foobar&pass=12345&id=blablabla&ding=submit" http://www.formpost.com/getthis/post.cgi

Ответы [ 2 ]

2 голосов
/ 31 октября 2009

Есть опция CURLOPT_POSTFIELDS. Он позволяет вам устанавливать данные POST либо в виде ассоциативного массива, либо в виде строки Таким образом, вам нужно будет использовать последний вариант.

0 голосов
/ 31 октября 2009

Ты не. GET-запросы и данные POST поступают в виде name=value. Единственное исключение - если вы измените кодировку отправки формы на enctype="multipart/form-data", потому что у вас есть элемент управления загрузкой файлов.

См. http://www.cs.tut.fi/~jkorpela/forms/file.html#enctype для получения дополнительной информации:

Спецификация HTML определяет два возможных значения для enctype:

enctype="application/x-www-form-urlencoded" (по умолчанию)
Это подразумевает простую кодировку, которая представляет поля в виде name=value строк, разделенных амперсандами (&), и использует некоторые специальные механизмы «escape» для символов, такие как %28 для символа «(». Это сбивает с толку, если люди пытаются чтобы прочитать его - он должен был обрабатываться программами, а не напрямую читаться людьми!

enctype="multipart/form-data"
Это подразумевает, что набор данных формы закодирован так, что каждое поле формы (точнее, каждый «элемент управления») представляется в формате, подходящем для этого поля, и набор данных в целом представляет собой составное сообщение, содержащее эти представления в качестве его компонентов. , Это бесполезно для «нормальных» форм, но подходит, даже для единственно возможного способа, для форм, содержащих поля файла. Многокомпонентная структура означает, что каждый файл входит в красивый «пакет» внутри большего пакета с подходящей «меткой» (информацией о типе содержимого) на внутреннем «пакете». Этот тип был первоначально определен в RFC 1867, но он также обсуждается в RFC 2388 (см. примечания к RFC позже).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...