Sharing URL generation from uuid4?
As Seluck suggested I decided to go with base64 encoding and decoding:
In the model my "link" property is now built from the standard url + base64.urlsafe_b64encode(str(media_id))
The url pattern I use to match the base64 pattern:
base64_pattern = r'(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$'
And finally in the view we decode the id to load the proper data:
media_id = base64.urlsafe_b64decode(str(media_id))
media = Media.objects.get(pk=media_id)
I'm having a bit of a problem figuring out how to generate user friendly links to products for sharing.
I'm currently using /product/{uuid4_of_said_product}
Which is working quite fine - but it's a bit user unfriendly - it's kind of long and ugly.
And I do not wish to use and id as it would allow users to "guess" products. Not that that is too much of an issue - I would like to avoid it.
Do you have any hints on how to generate unique, user friendly, short sharing urls based on the unique item id or uuid?