gpt4 book ai didi

JavaScript:在页面初始化时加载应用程序环境变量的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-03 06:02:43 25 4
gpt4 key购买 nike

我对 JavaScript 还比较陌生。我想做的一件事是能够拥有某些环境变量,特别是主机名。在开发中,它将是 localhost。在生产中,情况会完全不同。

我已经了解了如何使用 JSON 文件来加载值,如下所示:

值.json

{
"myVal": "production"
}

JQuery $.getJSON()(创建具有不可变字段的对象的 IIFE 函数的一部分)

$.getJSON("value.json", function(data){
myVal = data.myVal; //Not globally assigned, assigned to field in enclosing function
console.log(data.myVal);
});

问题在于 getJSON() 是异步的。虽然加载该数据的时间很短,但它确实创建了一种情况,即用户可能在完成加载主机名值之前单击页面上的链接。

我只是想知道处理这个问题的最佳方法是什么?如何确保该值始终可用?

到目前为止,我的一个想法是使用 session token ,因为它已经是请求/响应机制的一部分,并且始终可用。由于它将是一个签名 token ,因此它的值将是安全的,因此有人将无法恶意更改这些值。

但这听起来有点像一个黑客解决方案。所以我想知道是否有更好、更优雅的方法来实现它?

最佳答案

我经常使用的一种方法是从后端导入变量。例如,如果您使用 PHP,您可以只是 echo出变量。您可以放置​​以下 <script>在你的<head>CONFIG将随处可见。

<script>
var CONFIG = {
host: "<?php echo $host; ?>",
otherConfig: "<?php echo $otherConfig; ?>"
};
</script>

关于JavaScript:在页面初始化时加载应用程序环境变量的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39688135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com