Ruby Net::HTTP POST එකක් ප්රොක්සි හරහා යවන්න
පැහැදිලි ප්රොක්සියක් සමඟ Ruby HTTP සම්බන්ධතාවය වින්යාස කර, පසුව පෝරම දත්ත ගමනාන්තයට යවන්න.
පෝරමයේ ගමනාන්තය ඉල්ලීම තුළත් ප්රොක්සිය සම්බන්ධතා වින්යාසය තුළත් තබන්න. ඔබට අවශ්ය URL අඩංගු විශේෂ පෝරම ක්ෂේත්රයක් ප්රොක්සියට අවශ්ය නැත, ඔබ නිශ්චිත වෙබ් අඩවියක වෙබ්-ප්රොක්සි අතුරුමුහුණත භාවිතා නොකරන්නේ නම්.
Ruby හි Net::HTTP සඳහා, සේවාදායකය සෑදීමේදී පැහැදිලි HTTP ප්රොක්සියක් ලබා දිය හැක:
require 'net/http'
uri = URI('https://example.com/form')
http = Net::HTTP.new(uri.hostname, uri.port,
'203.0.113.10', 8080)
http.use_ssl = true
http.open_timeout = 5
http.read_timeout = 10
request = Net::HTTP::Post.new(uri.request_uri)
request.set_form_data('message' => 'hello')
response = http.start { |session| session.request(request) }
ප්රොක්සිය උදාහරණයක් පමණි; අනුමත පොදු පෝරම පරීක්ෂණ සඳහා HTTP අපේක්ෂකයින් HTTP ප්රොක්සි ලැයිස්තුවේ ඇත. පෝරමයේ අන්ත ලක්ෂ්යය යැවීම පිළිගැනීමට නියමිත සේවාවකින් ප්රතිස්ථාපනය කළ යුතුය. Net::HTTP හි ප්රොක්සි ලේඛනය ප්රොක්සි අක්තපත්ර සහ පරිසරයෙන් ලබා ගන්නා ප්රොක්සි සැකසුම් ද විස්තර කරයි.
ප්රොක්සියට දොස් පැවරීමට පෙර ප්රතිචාරය කියවන්න
පෝරමය ප්රතික්ෂේප කරන සේවාදායකයක් ප්රොක්සි මාර්ගය නිවැරදිව ක්රියා කළ පසුව HTTP දෝෂයක් නිපදවිය හැක. ප්රතිචාර තත්ත්වය සහ ගමනාන්තයේ අවශ්යතා පරීක්ෂා කරන්න: ක්රමය, අන්තර්ගත වර්ගය, පෝරම ක්ෂේත්ර, කුකීස් සහ ඕනෑම ඉල්ලීම් ටෝකනයක්.
ප්රොක්සි සත්යාපන අභියෝගය ප්රොක්සියෙන් පැමිණේ. යෙදුම් පිවිසුම හෝ ප්රතික්ෂේප කළ පෝරමය ගමනාන්තයට අයත් වේ. ඔවුන්ගේ අක්තපත්ර වෙන් කර තබන්න. ප්රොක්සි වින්යාසයට ගමනාන්ත මුරපදය එකතු කිරීමෙන් ගමනාන්ත පිවිසුම සපුරාලිය නොහැක.
Squid හි යොමු කිරීමේ ශීර්ෂක නීති තවත් හැකි ව්යාකූලතා මූලාශ්රයකි. ඔවුන්ගේ සේවාදායක පැත්තේ ප්රතිපත්තිය වලංගු Ruby POST එකක් ගොඩනැගීමෙන් වෙන් වේ. පෝරමය එක් වරක් අසාර්ථක වූ නිසා පමණක් හවුල් ප්රොක්සියක ශීර්ෂක නීති වෙනස් නොකරන්න.
නැවත උත්සාහ කිරීමේදී, පළමු යැවීම දැනටමත් සකසා තිබිය හැකිදැයි සලකන්න. නැති වූ ප්රතිචාරය POST එක කිසිදා යෙදුමට නොපැමිණි බවට සාක්ෂියක් නොවේ.