On Feb 9, 2011, at 2:24 PM, Anthony wrote:
> Do we want to handle websocket URLs as well (i.e., ws and wss schemes instead 
> of http and https)?

I don't know. Is there an RFC yet?

I've sent Massimo a patch already, but I could redo it to directly specify 
scheme= instead of secure=, and allow an arbitrary string.

Now would be the time...

> 
> On Wednesday, February 9, 2011 5:02:38 PM UTC-5, Jonathan Lundell wrote:
> On Feb 9, 2011, at 1:24 PM, howesc wrote:
> > good, bad, or indifferent, because of varied testing and deployment setups, 
> > and using multiple ports, i have the function below in my app.  note that i 
> > have database configuration for HTTPS scheme and port.  It's my hack not 
> > not run internal test and development servers on port 443. :)
> Thanks. I'd forgotten about port; I'll add that as well.
> 
> > 
> > def full_url(scheme="http",
> >     a=None,
> >     c=None,
> >     f=None,
> >     r=None,
> >     args=[],
> >     vars={},
> >     anchor='',
> >     path = None
> >     ):
> >     """
> >     Create a fully qualified URL.  The URL will use the same host as the
> >     request was made from, but will use the specified scheme.  Calls
> >     C{gluon.html.URL()} to construct the relative path to the host.
> > 
> >     if <scheme>_port is set in the settings table, append the port to the
> >     domain of the created URL
> > 
> >     @param scheme: scheme to use for the fully-qualified URL.
> >        (default to 'http')
> >     @param a: application (default to current if r is given)
> >     @param c: controller (default to current if r is given)
> >     @param f: function (default to current if r is given)
> >     @param r: request
> >     @param args: any arguments (optional)
> >     @param vars: any variables (optional)
> >     @param anchor: anchorname, without # (optional)
> >     @param path: the relative path to use.  if used overrides a,c,f,args, 
> > and
> >       vars (optional)
> >     """
> >     port = ''
> >     if sitesettings.has_key(scheme+"_port") and 
> > sitesettings[scheme+"_port"]:
> >         port = ":" + sitesettings[scheme+"_port"]
> >     if scheme == 'https' and sitesettings.has_key("https_scheme"):
> >         scheme = sitesettings.https_scheme
> >     url = scheme +'://' + \
> >         r.env.http_host.split(':')[0] + port
> >     if path:
> >         url = url + path
> >     else:
> >         url = url+URL(a=a, c=c, f=f, r=r, args=args, vars=vars, 
> > anchor=anchor)
> >     return url
> >
> 
> 
> 
> 
> 


Reply via email to