1. import json
  2. def strip_cookie_metadata(cookie):
  3. """
  4. Strips metadata from a cookie string for debugging.
  5. """
  6. try:
  7. parts = cookie.split(';')
  8. name = parts[0].split('=')[0].strip() # Extract cookie name
  9. value = parts[0].split('=')[1].strip() # Extract cookie value
  10. # Remove metadata (e.g., expiry, domain, path, etc.)
  11. stripped_value = value.split(';')[0].strip() # only take the actual value
  12. return {
  13. 'name': name,
  14. 'value': stripped_value
  15. }
  16. except IndexError:
  17. return None # Handle invalid cookie format
  18. def process_cookies(cookie_string):
  19. """
  20. Processes a cookie string and strips its metadata.
  21. """
  22. if cookie_string:
  23. stripped_cookie = strip_cookie_metadata(cookie_string)
  24. if stripped_cookie:
  25. return stripped_cookie
  26. else:
  27. return None
  28. else:
  29. return None
  30. if __name__ == '__main__':
  31. # Example Usage
  32. cookie_string = "sessionid=abcdefg12345; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; domain=.example.com"
  33. stripped_cookie = process_cookies(cookie_string)
  34. if stripped_cookie:
  35. print(json.dumps(stripped_cookie))
  36. else:
  37. print("Invalid cookie format")
  38. cookie_string2 = "another_cookie=value_with_metadata; max-age=3600; secure; httponly"
  39. stripped_cookie2 = process_cookies(cookie_string2)
  40. if stripped_cookie2:
  41. print(json.dumps(stripped_cookie2))
  42. else:
  43. print("Invalid cookie format")
  44. cookie_string3 = ""
  45. stripped_cookie3 = process_cookies(cookie_string3)
  46. if stripped_cookie3:
  47. print(json.dumps(stripped_cookie3))
  48. else:
  49. print("Invalid cookie format")

Add your comment