在 https 上使用 intl-tel-input

Posted

技术标签:

【中文标题】在 https 上使用 intl-tel-input【英文标题】:Using intl-tel-input on https 【发布时间】:2016-01-20 16:19:44 【问题描述】:

我在生产环境中使用intl-tel-input。对 intl-tel-input ipinfo.io 的默认请求使用 HTTPS。这在我的开发环境中不会发生,因为请求是在 HTTP 中。

有什么方法可以覆盖它,以便我可以在生产中使用 HTTP?

我的代码是:

var load_intlTelInput = function()
    $("#my_phone_number").intlTelInput(
        defaultCountry: "auto"
    );
;

PS:没有 intl-tel-input 或 ipinfo 标签。

【问题讨论】:

【参考方案1】:

查看https://github.com/Bluefieldscom/intl-tel-input/blob/42b64c002da735e8c0a90f012083d0d5c67df4c4/examples/js/defaultCountryIp.js 的 intl-tel-input 代码,该请求始终是作为 HTTP 调用发出的,而不是 HTTPS 调用。

如果您的问题是如何通过 HTTPS 进行调用,则需要修改该代码以请求 https://ipinfo.io,或者您可以将其更改为调用 //ipinfo.io(无 http 或 https)以便它'将匹配它所在页面的协议(http 或 https)。

请注意,通过 HTTPS 使用 http://ipinfo.io 仅限于付费订阅者,因此您还需要在 https://ipinfo.io/pricing 注册访问令牌,然后将您的令牌添加到请求中。

【讨论】:

【参考方案2】:

intl-tel-input 的版本不允许在指定请求方面进行足够的自定义,并且在生产模式下它始终默认为 HTTPS。因为我们使用 ipinfo 和免费帐户。反过来,我们也被阻止提出请求。

我只是更新到最新版本的软件(这不是垃圾邮件)并指定了一个自定义请求。更多信息可以在 intl-tel-input here 的问题页面上找到。

【讨论】:

以上是关于在 https 上使用 intl-tel-input的主要内容,如果未能解决你的问题,请参考以下文章

在表达式引擎重定向循环上强制使用 HTTPS

在 Retrofit2 上使用 HTTPs 的 SSLProtocolException

如何在 AWS Elastic Beanstalk 上强制使用 HTTPS

在 GitHub 上使用 HTTPS 或 SSH

在https上使用Nivo Lightbox时出现混合内容错误

使用 HTTPS 请求在 Elastic Beanstalk 上设置 API 的问题