Is the code available in the repo yet?
On 2/9/11 6:37 PM, Jonathan Lundell wrote:
On Feb 9, 2011, at 3:34 PM, David J. wrote:
So then we would use scheme='https' for secure and forget the secure
flag?
Right. It's a little more general, since 'secure' could also imply 'wss'.
On 2/9/11 6:26 PM, Jonathan Lundell wrote:
On Feb 9, 2011, at 2:54 PM, Jonathan Lundell wrote:
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...
OK, I made the change. scheme='wss' (for example) works.
scheme=True uses the scheme from request.env
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
>