2015-04-27 10 views
0

Ruby http-библиотека может использоваться для создания HTTP-агента. Я могу использовать его для публикации данных моей формы.Использование стандартной библиотеки HTTP

Но, когда мы говорим «данные формы», сначала нам нужна физическая форма для заполнения пользователем, затем мы можем беспокоиться о посылке данных.

Теперь мы не используем http-библиотеку для визуализации физической формы элемент справа? как мы собираемся вводить пользователя? от stdin?

Для чего обычно используются библиотеки http?

+0

Я думаю, вы смешиваете вещи. Для библиотеки HTTP нет формы. Работа вашего кода заключается в том, чтобы предоставить данные для публикации - либо путем «чтения» формы, либо жесткого кодирования данных в ... Лично я не использую библиотеку HTTP, но это основное использование (из моего опыта использования подобных решений) связь между приложениями через Интернет (обычно с использованием маршрутизации JSON/XML и/или RESTful). – Myst

ответ

1

Ядро Ruby HTTP-библиотека предоставляется в качестве «лучшей, чем ничего» реализации HTTP-клиента. На самом деле не предполагается, что он будет использоваться для чего-либо серьезного, кроме случаев, когда вы используете Ruby-код в среде, где вам не разрешено устанавливать какие-либо дополнительные зависимости, или было бы невежливо навязывать. Это намного сложнее в использовании, чем другие эквивалентные библиотеки.

Если вы занимаетесь серьезной работой с HTTP в Ruby, вы используете что-то гораздо менее низкое. Хорошими кандидатами являются HTTParty или Faraday, но есть десятки других, которые могут быть лучше подобраны в зависимости от ваших потребностей.

1

В отличие от стандартной библиотеки HTTP, который подходит только для стандартных запросов без особых автоматизации, один coukd использовать более современные библиотеки, такие как Mechanize на самом деле автоматизировать взаимодействие с пользователем и заполнить HTML форму. Если вы не хотите использовать такую ​​библиотеку, вы можете просто закодировать параметры формы и отправить запрос (например, POST) в URL-адрес форм. Это можно сделать со стандартной библиотекой, например. с: Net::HTTP.post_form

Смежные вопросы