Если ваши ресурсы размещены на том же компьютере, с которого вы обслуживаете запросы, может вообще не потребоваться указывать схему URL:
<script src="/static/js/myfile.js" type="text/javascript"></script>
При этом будет использоваться тот же протокол (http или https) и сервер как запрос к исходной странице.
Редактировать 2 (2016):
Если вы обращаетесь к ресурсу на другом сервере, лучшее решение сейчас (как указано )out на mpen ниже ) - использовать относительную схему URL:
<script src="//media.example.com/static/js/myfile.js" type="text/javascript"></script>
Это автоматически подключится к серверу с использованием http или https в зависимости от подключения к текущей странице.
Обратите внимание, что это может вызвать некоторые проблемы , если вам требуется поддержка старых браузеров.
Редактировать: В качестве альтернативы, если вам действительно нужна информация в шаблоне по какой-то причине, вы можете добавьте обработчик контекста запроса и используйте RequestContext в ваших представлениях.Это помещает переменную request
в контекст вашего шаблона, что дает вам доступ к объекту HttpRequest
.Затем можно проверить, является ли запрос безопасным, проверив значение request.is_secure
Например:
<script src="http{% if request.is_secure %}s{% endif %}://media.example.com/static/js/myfile.js" type="text/javascript"></script>