如何通过 php 设置全局 javascript 变量以使值不公开?

发布于 2024-11-06 06:17:52 字数 367 浏览 0 评论 0原文

我有 api 键,我不想公开显示,但我仍然想将它们分配为全局 javascript 变量,以便我可以在脚本中访问它们。 api 密钥存储在数据库中并可通过 php 获取。

假设我有 php 变量 $key 我想将其分配给全局 javascipt 变量。我所做的不是在 head 标签中使用这行代码。

window.key = ;

但是这样 api 键在 head 标签中就完全开放了。我想你明白了。谢谢!

仅供参考:我正在 wordpress 工作。所以,如果有任何 WordPress 特定的解决方案,我们非常欢迎!

I have api keys which i don't want to show in public but still i want to assign these as global javascript variable so i can access these in scripts. The api key are stored in database and available via php.

Suppose i have the php variable $key which i want to assign to a global javascipt variable. Not what i do is in the head tag use this line of code.

window.key = <?php echo $key; ?>;

But that way the api keys are wide open in the head tag. I think you get the idea. Thanks!

FYI: I am working in wordpress. So, if there is any wordpress specific solution you are most welcome!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

一个人的夜不怕黑 2024-11-13 06:17:52

这是不可能的,因为 JavaScript 是客户端的,因此始终是公开的。

It's not possible, since JavaScript is client-side and therefore always public.

夜无邪 2024-11-13 06:17:52

尝试通过ajax请求密钥。

但它在运行时仍然可见。使用 firebug 的人可以检查请求的答案,也可以通过 firebug 控制台中的 console.log 显示变量。

javascript 变量对于客户端始终可见。

try to request the key via ajax.

but it will still be visible at runtime. a person using firebug could check the answer of the request and can also display the variable via console.log in the firebug-console.

a javascript variable is always visible for the client.

动次打次papapa 2024-11-13 06:17:52

所有 javascript 都是可见的。您没有告诉我们为什么需要 api key,所以我建议以下解决方案:

  1. 您可以为客户端设置临时 api key

  2. 如果客户端想要要通过 api 密钥下载文件,您可以使用用 php 编写的代理,因此当客户端下载页面 http://yoursite/proxy/< /a> 隐藏下载http://somesite/api/api-key/ 并返回给客户

All javascripts are visible. You dont tell us why you need api key, so i propose following solutions:

  1. You can set a temporary api key for the client

  2. If a client wants to download a file via api key you can use proxy, written in php, so when client download page http://yoursite/proxy/ its hiddenly download http://somesite/api/api-key/ and returning for client

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文