mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/webrick.rb: Moved proxy rewriting to WEBrick::HTTPProxy.
* lib/webrick/httpproxy.rb: Add examples of creating a proxy server and response rewriting using HTTPProxy. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
30f0e97ef0
commit
42ffb2ed15
3 changed files with 37 additions and 4 deletions
|
@ -1,3 +1,9 @@
|
|||
Fri Feb 3 07:16:47 2012 Eric Hodel <drbrain@segment7.net>
|
||||
|
||||
* lib/webrick.rb: Moved proxy rewriting to WEBrick::HTTPProxy.
|
||||
* lib/webrick/httpproxy.rb: Add examples of creating a proxy server
|
||||
and response rewriting using HTTPProxy.
|
||||
|
||||
Fri Feb 3 06:53:22 2012 Eric Hodel <drbrain@segment7.net>
|
||||
|
||||
* ext/openssl/ossl_x509store.c: Add class documentation for
|
||||
|
|
|
@ -129,9 +129,8 @@
|
|||
#
|
||||
# trap 'INT' do proxy.shutdown end
|
||||
#
|
||||
# Proxies may modifier the content of the response through the
|
||||
# +:ProxyContentHandler+ callback which will be invoked with the request and
|
||||
# respone after the remote content has been fetched.
|
||||
# See WEBrick::HTTPProxy for further details including modifying proxied
|
||||
# responses.
|
||||
#
|
||||
# == Basic and Digest authentication
|
||||
#
|
||||
|
|
|
@ -35,6 +35,34 @@ module WEBrick
|
|||
|
||||
##
|
||||
# An HTTP Proxy server which proxies GET, HEAD and POST requests.
|
||||
#
|
||||
# To create a simple proxy server:
|
||||
#
|
||||
# require 'webrick'
|
||||
# require 'webrick/httpproxy'
|
||||
#
|
||||
# proxy = WEBrick::HTTPProxyServer.new Port: 8000
|
||||
#
|
||||
# trap 'INT' do p.shutdown end
|
||||
# trap 'TERM' do p.shutdown end
|
||||
#
|
||||
# p.start
|
||||
#
|
||||
# See ::new for proxy-specific configuration items.
|
||||
#
|
||||
# == Modifying proxied responses
|
||||
#
|
||||
# To modify content the proxy server returns use the +:ProxyContentHandler+
|
||||
# option:
|
||||
#
|
||||
# handler = proc do |req, res|
|
||||
# if res['content-type'] == 'text/plain' then
|
||||
# res.body << "\nThis content was proxied!\n"
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# proxy =
|
||||
# WEBrick::HTTPProxyServer.new Port: 8000, ProxyContentHandler: handler
|
||||
|
||||
class HTTPProxyServer < HTTPServer
|
||||
|
||||
|
@ -46,7 +74,7 @@ module WEBrick
|
|||
# request
|
||||
# :ProxyVia:: Appended to the via header
|
||||
# :ProxyURI:: The proxy server's URI
|
||||
# :ProxyContentHandler:: Called with a request and resopnse and allows
|
||||
# :ProxyContentHandler:: Called with a request and response and allows
|
||||
# modification of the response
|
||||
# :ProxyTimeout:: Sets the proxy timeouts to 30 seconds for open and 60
|
||||
# seconds for read operations
|
||||
|
|
Loading…
Reference in a new issue