Как я могу заставить httparty работать со Glassfish? Получение ответа 400 BadRequest - PullRequest
1 голос
/ 30 июля 2010

Использование: Glassfish v3.Httparty 0.6.1 & 0.5.2.

Я запускаю Glassfish с помощью «mvn glassfish: run» (maven-glassfish-plugin) Все работает в приложении.

Этот URL работает вRESTClient, cURL и в браузере, но когда я пытаюсь использовать httpparty в командной строке, я получаю следующее:

$> httparty -v "http://localhost:8080/parakeet/tickets/111"
GET http://localhost:8080/parakeet/tickets/111

400 BadRequest
content-type: text/plain; charset=iso-8859-1
connection: close
date: Fri, 30 Jul 2010 19:15:34 GMT
content-length: 0

Я полагаю, что это из-за заголовка или чего-то еще.Я пытался использовать httparty для отправки следующих заголовков:

-H "Content-type":"application/json" -H "charset":"UTF-8" -H "Accept":"*/*"

И всех комбинаций вышеперечисленного, включая

-H "Content-type":"application/json; charset=UTF-8"

Есть мысли?

1 Ответ

1 голос
/ 31 июля 2010

Очевидно, Glassfish требует заголовок «Пользователь-агент». Он работает с чем угодно, только если он установлен. Это работает (извлечено из панели ресурсов Chrome):

httparty -v -H "User-Agent":"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.125 Safari/533.4" http://localhost:8080/parakeet/tickets/34

Как это сделать

httparty -v -H "User-Agent":"Commander Cool" http://localhost:8080/parakeet/tickets/34
...