我有一个cordova / ionic移动应用程序,它使用https://maps.googleapis.com/maps/api/js?key=AndroidKey
和https://maps.googleapis.com/maps/api/js?key=iOSKey
将google maps(在index.html主文件中)加载到该应用程序(android和ios)中。每个键都受到“应用程序”限制的锁定,无法使用。我发现只能通过HTTP引荐来源网址或服务器IP来锁定Web服务api。
但是由于地图是直接通过客户端加载的,因此没有域或服务器IP的HTTP引荐来源网址...还有其他方法可以锁定API密钥吗?
我可以使用https://github.com/wymsee/cordova-HTTP
之类的东西来创建HTTP引用程序吗?如果可以的话,我可以创建哪种合法的域名引荐来源网址,以解决Google Maps api HTTP引荐来源网址的问题?
更新:有人将其标记为dup,但该帖子是关于Android SDK API,而我的是关于Javascript Map API。
在使用cordova-plugin-ionic-webview
(docs)时,在离子3/4/5中,引荐来源网址为iOS的cordova-plugin-ionic-webview
和Android的ionic://localhost
。>
http://localhost
,而该网站无法轻易将其盗取(另外一个应用程序可以设置相同)。https://mobileapp.author.domain.com/
(根据此SO答案:"server": {"hostname": "mobileapp.author.domain.com"}
)] >>*://localhost/*
引荐来源白名单的唯一方法。这也适用于电容器