HTTParty прокси аутентификациясы: хост, порт, колдонуучу аты жана сырсөз
HTTP прокси хостун, сандык портту жана милдеттүү эмес прокси маалыматтарын түз HTTParty суроосуна өткөрүңүз, API токенин өз аталышында сактаңыз.
HTTParty алдыңкы проксини суроо параметрлери катары кабыл алат. Кызматтын URL дарегин биринчи аргумент катары калтырыңыз:
response = HTTParty.get(
'https://api.example/items',
http_proxyaddr: 'proxy.example',
http_proxyport: 8080,
http_proxyuser: ENV.fetch('PROXY_USER'),
http_proxypass: ENV.fetch('PROXY_PASSWORD'),
headers: { 'Authorization' => "Bearer #{ENV.fetch('API_TOKEN')}" },
open_timeout: 5,
read_timeout: 15
)
puts response.code
Прокси хост менен порт ортомчуну белгилейт. Прокси колдонуучу аты жана сырсөзү ошол жерде аутентификацияланат. Authorization аталышы APIге таандык, анын эсеби таптакыр башка болушу мүмкүн.
Аутентификациясыз прокси үчүн http_proxyuser жана http_proxypass өткөрүп жибериңиз. Уруксат берилген коомдук маршруттагы коомдук API суроосу үчүн HTTP прокси тизмесинен HTTP дарегин алыңыз, прокси маалыматтарын суроодо да, класстын демейки маанилеринде да калтырбаңыз. Хост талаасы прокси дареги катары Net::HTTPке берилет; хост атын портунан өзүнчө бериңиз, буталыш URL же PAC URL эмес.
HTTParty камтыган каптоочу класс анын ордуна демейки маанилерди коюу үчүн өзүнүн http_proxy класс ыкмасын колдоно алат. Суроо параметрлери ошол демейки маанилерден ушул чакыруу үчүн басымдуу болот.
Бул HTTPartyнин демейки туташуу адаптерин сүрөттөйт. Ыңгайлаштырылган connection_adapter өз параметрлерин чечмелөөгө жооптуу, ошондуктан жарактуу жөндөө эленбей калганда ошол адаптерди текшериңиз. HTTP статусун талданган API маалыматтарынан өзүнчө окуңуз; JSONды ийгиликтүү талдоо аутентификациянын жыйынтыгы эмес.