【问题标题】:Implementing Google Places Autocomplete dropdown without the javascript library在没有 javascript 库的情况下实现 Google Places 自动完成下拉菜单
【发布时间】:2020-08-20 11:18:48
【问题描述】:

我正在实现 Google Places Autocomplete 下拉菜单,但需要在服务器上进行 api 通信,以免暴露 API 密钥(项目要求)。从我的服务器到客户端的建议地址的查询和返回已经完成并且正在工作。现在我只需要使用数据构建下拉列表。

使用places javascript 库(new google.maps.places.Autocomplete(elem)) 实现自动完成下拉小部件相当简单,但是当您不使用该库时,是否有一种省力的方法?或者有没有办法在不暴露您的 api 密钥的情况下使用该库?

【问题讨论】:

    标签: google-maps google-places-api googleplacesautocomplete


    【解决方案1】:

    如果您需要在客户端 JavaScript 中实现 Place Autocomplete,那么您应该使用客户端 library。否则你会遇到一堆问题,比如 CORS 错误。

    如果您担心的是公开 API 密钥,请注意没有必要这样做,因为密钥可以(并且应该)是带有 HTTP 引用的 restricted。只要它受到限制,就不能从第三方域使用它。要了解有关 API 密钥限制的更多信息,请查看Google's documentation

    希望这会有所帮助!

    【讨论】:

    • 谢谢,如果我们在当前的实现中遇到任何问题,我会看看这是否会改变产品所有者在 javascript 中实现它的想法。在此期间,我使用 jQuery UI 自动完成小部件和我的服务器和谷歌之间发生的 api 通信来实现它。从后端代码向自动完成 api Web 服务发出请求时,我没有遇到任何 CORS 问题。
    • 很好:)。请注意,jQuery UI 没有使用 Maps Place Autocomplete。而且您绝对可以在后端毫无问题地使用 Places Autocomplete web service。我的意思是在客户端 JS 中使用 Web 服务会导致像 these 这样的问题,这就是 client-side 自动完成服务的用途。
    猜你喜欢
    • 2016-10-27
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 2018-12-12
    • 2011-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多