400 плохих запросов с curl и https url - PullRequest
0 голосов
/ 06 апреля 2011

Я использую curl (через плагин symfony sfWebBrowser вместе с sfCurlAdapter) и пытаюсь выполнить очень простой запрос POST по URL-адресу https.

Выполнение этого с обычным браузером дает 200 OK, тогда как curl выдает ошибку «400 Bad Request».

Я использовал опцию verbose на curl, и вот что я получил:

* About to connect() to preprod-ppps.paybox.com port 443 (#0)
*   Trying 195.101.99.73...   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* connected
* Connected to preprod-ppps.paybox.com (195.101.99.73) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSL connection using DHE-RSA-AES256-SHA
* Server certificate:
*        subject: C=FR; postalCode=78280; ST=Yvelines; L=GUYANCOURT; street=11A rue Jacques Cartier; O=PAYBOX SERVICES; OU=0002 431408608; OU=X509 Omnidomaine TBS; CN=*.paybox.com
*        start date: 2009-08-17 00:00:00 GMT
*        expire date: 2011-10-03 23:59:59 GMT
*        subjectAltName: preprod-ppps.paybox.com matched
*        issuer: C=GB; ST=Greater Manchester; L=Salford; O=Comodo CA Limited; CN=AAA Certificate Services
*        SSL certificate verify ok.
> POST /PPPS.php HTTP/1.1
Host: preprod-ppps.paybox.com
Accept: */*
Accept-Encoding: gzip,deflate

< HTTP/1.1 400 Bad Request
< Date: Wed, 06 Apr 2011 11:56:35 GMT
< Server: HttpServer
< Content-Length: 226
< Connection: close
< Content-Type: text/html; charset=iso-8859-1
< 
100   226  100   226    0     0    793      0 --:--:-- --:--:-- --:--:--  1013* Closing connection #0

Я также попытался установить каждый заголовок, который мог видеть с помощью firebug, чтобы запрос был одинаковым в обоих случаях, но безуспешно. Что пошло не так?

Ответы [ 2 ]

5 голосов
/ 06 апреля 2011

Похоже, у вас нет пост-данных с вашим запросом.Возможно, вы неправильно настроили передачу скручивания.

У вас должен быть как минимум заголовок Content-Length с вашим POST.

0 голосов
/ 06 апреля 2011

Может быть, они блокируют завиток, поскольку думают, что бот пытается атаковать их систему. Они смогут обнаружить пользовательский агент по заголовкам, которые вы отправляете вместе с вашим запросом.

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