curl твой друг! :)
Скажем, вы заметили конечную точку в example.org/process.php
, в которую отправляется форма. Вы можете легко настроить свой собственный запрос из командной строки, используя curl
.
$ curl -X POST --data "action=delete&userid=100" example.org/process.php
Флаг --data
или -D
позволяет передавать произвольные данные POST так же, как это делает форма HTML. Вы также можете с легкостью установить заголовки HTTP-запроса:
$ curl --header "User-Agent: Mosaic" example.org/process.php
Вы можете точно увидеть, что происходит с флагом -v
(для многословия). Для первого приведенного выше примера выведите:
* About to connect() to example.org port 80 (#0)
* Trying 192.0.43.10... connected
* Connected to example.org (192.0.43.10) port 80 (#0)
> POST /process.php HTTP/1.1
> User-Agent: curl/7.21.6 (x86_64-apple-darwin10.5.0) libcurl/7.21.6 OpenSSL/1.0.0d zlib/1.2.5 libidn/1.22
> Host: example.org
> Accept: */*
> Content-Length: 24
> Content-Type: application/x-www-form-urlencoded
>
* HTTP 1.0, assume close after body
< HTTP/1.0 302 Found
< Location: http://www.iana.org/domains/example/
< Server: BigIP
* HTTP/1.0 connection set to keep alive!
< Connection: Keep-Alive
< Content-Length: 0
<
* Connection #0 to host example.org left intact
* Closing connection #0
Если вы используете операционную систему * NIX, включая Mac OS X, у вас, вероятно, уже есть curl
, просто откройте оболочку. Если вы вообще работаете с Ruby, я настоятельно рекомендую curb , набор привязок для этого языка. Большинство установок PHP поставляются с поддержкой curl, хотя интерфейс довольно ужасный. Документы окончены на php.net .