Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

url-obfuscate

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

url-obfuscate

This is a Django application that provides methods to obfuscate/deobfuscate URLs

  • 0.1.3
  • PyPI
  • Socket score

Maintainers
1

url_ofbuscate

This is a Django application that provides methods to obfuscate/deobfuscate URLs.

Quick start

Install using pip or easy_install

$ pip install url-obfuscate

$ easy_install url-obfuscate

Add "url_obfuscate" to your INSTALLED_APPS setting like this:

INSTALLED_APPS = (
    ...
    'url_obfuscate',
)

Usage

To obfuscate Django's URLs, modify the URL declaration in the urls.py file by replacing the regex definition with the funcion generate_url_pattern, as follows:

from url_obfuscate.helpers import generate_url_pattern
...

urlpatterns = patterns('views',
    url(generate_url_pattern('/'), 'home', name='home'),
    url(generate_url_pattern('obfuscated_link', params=['(?P<name>[^/]+)']), 'obfuscated_link', name='obfuscated_link'),
)

For the home URL, use / path. To include params in the URL, declare them in the desired order inside the params attribute. When obfuscating a URL with parameters, it is necessary to use the deobfuscate decorator to recover the original value of the parameter.

from url_obfuscate.decorators import deobfuscate
...

@deobfuscate
def obfuscated_link(request, name):
    return render(request, 'obfuscate_result.html', { 'name': name })

When declaring URLs with parameters inside templates, use the obfuscate template tag, as follows:

{% load obfuscate %}
...
<p><a href="{% url 'obfuscated_link' 'Laura Manzur'|obfuscate %}">Obfuscated link: {% url 'obfuscated_link' 'Laura'|obfuscate %}</a></p>
...

If you need to obfuscate any value from inside a view, use the obfuscate function, as follows:

from url_obfuscate.helpers import obfuscate
...

def home(request):
    links = list()
    for i in range(10):
        links.append(obfuscate('Name %d' % (i+1)))
    return render(request, 'index.html', { 'links': links })

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc