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 பயன்பாட்டை அடையவே இல்லை என்பதற்கான ஆதாரம் அல்ல.