Bir Ruby sınıfı HTTParty'yi içerdiğinde, proxy'yi o sınıfa koyun ve istekleri onun üzerinden yapın:

class Reports
  include HTTParty
  http_proxy 'proxy.example', 8080
end

response = Reports.get('https://reports.example/monthly')

Örnek, HTTParty'nin yüklü olduğunu varsayar. Proxy yöntemi bir ana bilgisayar adı ve tamsayı bağlantı noktası alır; kullanıcı adı ve parola bağımsız değişkenleri isteğe bağlıdır. Proxy hesabı olmadan izin verilen bir public-API testi için ana bilgisayar ve bağlantı noktası için HTTP proxy listesinden bir HTTP adayı kullanın. Hedef URL'yi get üzerinde bırakın.

Reports'un bir örnek yöntemi içinde, tam olarak yapılandırılmış o sınıf yöntemini çağırmak istediğinizde self.class.get(...) kullanın. Bunun yerine üst düzey HTTParty modülünü çağırmak, az önce varsayılanlarını yapılandırdığınız sarmalayıcıyı atlayabilir.

Aynı ayrım, birkaç API sarmalayıcısı bir uygulamayı paylaştığında da önemlidir. Bir sınıfı onarmak için HTTParty::Basement'i global olarak değiştirmek yerine her birine amaçlanan proxy politikasını verin.

HTTParty ayrıca http_proxyaddr ve http_proxyport gibi istek başına proxy seçenekleri sunar. Rota gerçekten tek bir isteğin parçası olduğunda bunları kullanın. Her Reports işlemi aynı yolu izlemesi gerektiğinde sınıf varsayılanlarını okumak daha kolaydır.

İlgili makaleler