Тишина
12-10-2015, 22:44
Пытаюсь использовать curl в качестве REST-клиента для https-сайта с авторизацией, работающего на tomcat 7.0.52
Запускается батник
@echo off
SET DEBUG=OFF
SET COOKIES=./cookies.txt
SET USER=ADMIN
SET PASSWORD=ADMIN
SET HOST=https://some_host.some_domain:123456
@echo Authenticating......
rem тут мы авторизовываемся, авторизация норм, проверено!
curl -k -c %COOKIES% "%HOST%/path_to_login" >report.log 2>&1
curl -k -L -b %COOKIES% -c %COOKIES% -d j_username=%USER% -d j_password=%PASSWORD% "%HOST%/path_to_login_test" >>report.log 2>&1
curl -# -i -k -b %COOKIES% -c %COOKIES% -A "Mozilla/41.0" "%HOST%/some_link" > try_1.xml
curl -# -i -k -b %COOKIES% -c %COOKIES% "%HOST%/some_link" > try_2.xml
оба файла (try_1.xml и try_2.xml) содержат
HTTP/1.1 406 Not Acceptable
Server: Apache-Coyote/1.1
Cache-Control: private, max-age=0, must-revalidate
Expires: Mon, 12 Oct 2015 19:28:45 GMT
Content-Length: 0
Date: Mon, 12 Oct 2015 19:28:45 GMT
За авторизацию ручаюсь, т.к. такой же батник, но с другим URL (curl -# -i -k -b %COOKIES% -c %COOKIES% "%HOST%/some_link_OK" > try_OK.xml) выдаёт адекватную xml. Если использовать Rest-Client на Firefox и загонять туда "не работающий" url - то так же не возникает проблем с отображением (метод GET, хейдеры не используются).
кроме как использовать -A "Mozilla/41.0" ничего толкового в гуглах не подсказывают, типа загвоздка только в "представлении" curl-а.
P.S. реальные логин/пасс/линки дать не могу... к сожалению...
Запускается батник
@echo off
SET DEBUG=OFF
SET COOKIES=./cookies.txt
SET USER=ADMIN
SET PASSWORD=ADMIN
SET HOST=https://some_host.some_domain:123456
@echo Authenticating......
rem тут мы авторизовываемся, авторизация норм, проверено!
curl -k -c %COOKIES% "%HOST%/path_to_login" >report.log 2>&1
curl -k -L -b %COOKIES% -c %COOKIES% -d j_username=%USER% -d j_password=%PASSWORD% "%HOST%/path_to_login_test" >>report.log 2>&1
curl -# -i -k -b %COOKIES% -c %COOKIES% -A "Mozilla/41.0" "%HOST%/some_link" > try_1.xml
curl -# -i -k -b %COOKIES% -c %COOKIES% "%HOST%/some_link" > try_2.xml
оба файла (try_1.xml и try_2.xml) содержат
HTTP/1.1 406 Not Acceptable
Server: Apache-Coyote/1.1
Cache-Control: private, max-age=0, must-revalidate
Expires: Mon, 12 Oct 2015 19:28:45 GMT
Content-Length: 0
Date: Mon, 12 Oct 2015 19:28:45 GMT
За авторизацию ручаюсь, т.к. такой же батник, но с другим URL (curl -# -i -k -b %COOKIES% -c %COOKIES% "%HOST%/some_link_OK" > try_OK.xml) выдаёт адекватную xml. Если использовать Rest-Client на Firefox и загонять туда "не работающий" url - то так же не возникает проблем с отображением (метод GET, хейдеры не используются).
кроме как использовать -A "Mozilla/41.0" ничего толкового в гуглах не подсказывают, типа загвоздка только в "представлении" curl-а.
P.S. реальные логин/пасс/линки дать не могу... к сожалению...