的最小版本只是一个视图其中:
- 获取输入URL参数,从自己的网址,
- 获取输入URL,
- 适用的转换,
- 回报转换的内容给客户。
那应该是在Django很简单,在电线之间的东西:
import urllib2
from django.views.generic import View
class SimpleProxy(View):
def get(self, request, source_url, *args, **kwargs):
request = urllib2.Request(url)
response = urllib2.urlopen(request)
body = response.read()
# Update body here
return HttpResponse(body, status=response.getcode(),
content_type=response.headers['content-type'])
你可能想看看Django HTTP Proxy或其他类似的解决方案,这基本上做同样的事情,尽管有一个不同的URL处理方案,因为它们使用固定的目标URL。
然后根据你的需要,你可能需要做开发更先进的功能,例如:从客户端
- 复制请求头到
urllib2
要求,使源站点接收正确的头。
- 在对客户端的响应中重写URL,以便它们也指向您的服务(对于
href
,src
和标记应该很容易,而在JavaScript内部应该很简单)。
- 支持POST请求。
谢谢!这真棒!我发现了美丽的汤图书馆,感谢这很好,但现在我实际上停留在我想要将HTML页面与新编辑一起放回的位置,并将其显示回给用户! – 0bserver07 2013-04-24 08:49:27