我正在尝试找到一种方法来隐藏javascript脚本上显示的谷歌地图键。
密钥是从 django 设置生成的。
我不确定如何正确实现它javascript script and src
settings.py
GOOGLE_MAP = "XZZZZZZX"
views.py
def foo_list(request):
"""
Render list of foo.
"""
foo = Foo.objects.all()
# Google Map Key
google_map_key = settings.GOOGLE_MAP
context = {
'foo': foo,
'google_map_key': google_map_key
}
return render(request, 'snippet/index.html', context)
.HTML
{% extends "base.html" %}
{% load static %}
{% block content %}
<!-- Render Map on HTML -->
<div id="map"></div></br></br>
<!-- Pass the Google Map key variable to Front end -->
<div id="google_map" style="display:none" value="{{ google_map_key }}"></br>
{% endblock %}
{% block key %}
<!-- Grab the Google Map key value from HTML above -->
var name_ = document.getElementById('google_name').getAttribute("value");
<!-- Google Map Key -->
<script id="name" data-name="value" src="https://maps.googleapis.com/maps/api/js?key=XZZZZZZX&callback=initMap" async defer></script>
{% endblock %}
我怎样才能用后端的自定义变量替换谷歌地图键?
有一些技巧可以用来使某人更难查看javascript代码,但是有人没有办法明确和完全隐藏javascript代码。
保护 API 密钥的唯一方法是转到开发人员控制台并添加应用程序限制。应用程序限制控制哪些网站、IP 地址或应用程序可以使用您的 API 密钥。