Методы Http-запроса и параметры - PullRequest
0 голосов
/ 21 ноября 2011

ну, из любопытства, каковы методы HTTP, которые принимают параметры в строке запроса?все они?Какие методы HTTP, в которых параметры должны быть отправлены через cURL POSTFIELDS?

Ответы [ 2 ]

3 голосов
/ 21 ноября 2011

Все методы запроса (GET, HEAD, POST, OPTIONS, PUT, TRACE, DELETE, BREW) могут иметь параметры запроса ?x=y в стиле GET. Это просто необычно для некоторых других (CONNECT).

Причина в том, что HTTP имеет дело с "ресурсами", и на самом деле его не волнуют параметры URL. Начиная с разделителя пути /, все это просто считается именем ресурса. Есть ли в нем какие-либо вопросительные знаки ?, или принимающий веб-сервер использует вместо него @, не имеет значения, поскольку зависит от реализации.

HTTP-клиенты, очевидно, знают о схемах URL-адресов и о том, как их разделить, но для самого протокола это не имеет большого значения. Я думаю, что спецификация ( RFC1616 ) мало упоминает помимо описания схемы URL. HTTPbis может быть более сложным.

Если у вас есть тело запроса в стиле POST с другими методами, оно зависит не столько от глагола HTTP, сколько от наличия заголовка запроса Content-Type: и Content-Length:.

0 голосов
/ 21 ноября 2011

В строке запроса, например, (http://www.mydomain.com/myscript.php?myParameter=myValue) известен как метод GET, а другой метод, который отправляет данные за кулисы - это POST. Фактически вы можете одновременно использовать GET и POST.Вы должны отправить его в POST с типом "multipart / form-data"

...