On 2013-09-25 18:02, Νίκος wrote:
> This indeed works now:
> 
> ref = os.environ.get('HTTP_REFERER', 'Άγνωστο Ref')
> 
> but iam wondering why this doesnt work also:
> 
> ref = os.environ('HTTP_REFERER')
> 
> Shouldnt both work?

No...that calls os.environ.  You likely *mean*

  ref = os.environ['HTTP_REFERER']

using square brackets.  However, as previously noted by multiple
respondents, this header is not guaranteed to be sent by the browser
for a variety of reasons, so it may not be in the environment
dictionary at all. Thus you are likely to get KeyError exceptions if
you don't use .get() unless you wrap it in a check:

  if "HTTP_REFERER" in os.environ:
    ref = os.environ["HTTP_REFERER"]
  else:
    deal_with_this_situation()

-tkc









-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to