如何将JavaScript脚本文件设为私有?

时间:2018-07-02 05:06:01

标签: javascript html scripting

我想知道如何做到这一点,以使访问我网站的用户看不到JavaScript脚本文件。

让我详细说明:

有时,在我的Javascript中,我有一些我不希望别人看到的Firebase之类的配置信息。如果有人掌握了这些信息,他们可能会利用它并在其本地主机上运行它,并弄乱我的数据。我需要在我的网站Javascript上拥有私有配置信息,否则该网站将无法正常工作。但是,如果其他人看到了该脚本,则他们可以将其复制并在自己的网站上使用,这将使所有内容混乱。我想知道如何制作私人脚本。

如果那不可能,那很好。我只想知道接下来该怎么办。

以下是我尝试过的一些事情:

<!DOCTYPE html>
<html>

<head>
  <script>
    // config information
  </script>
</head>

<body></body>

</html>

但这不起作用。使用Inspect Element,用户可以轻松找到它。

另一个想法是:

<script src="js/config.js"></script>

但这也无济于事,用户只能检查元素,然后右键单击链接并说“源面板中的显示脚本”

我该怎么办?

如果无法将脚本设为私有,请告诉我。我只想知道该怎么办。

2 个答案:

答案 0 :(得分:3)

所有客户端资源(例如HTML,CSS,JS,图像和其他文件)都应该是公开的。您可以通过在.htaccess中添加条目来隐藏文件,例如:

Public Sub Subledger_Makro()


Dim Subwb As Workbook
Dim Subsht As Worksheet
Dim Sourcewb As Workbook
Dim SourceSht As Worksheet



Set Subwb = ActiveWorkbook
Set Subsht = Subwb.Sheets("SAPBW_DOWNLOAD")

SourceFile = Application.GetOpenFilename(, , "Open yesterdays Subledger Report")

Set Sourcewb = Workbooks.Open(SourceFile)
Set SourceSht = Sourcewb.Sheets("SAPBW_DOWNLOAD")



'Copies the previous day Subledger (SourceSht) report J-Column to new the Subledgers (DestSht) K-column
' DestSheet is todays Subledger
' SourceSheet is the previous day Subledger


 With SourceSht
.Range(.Cells(15, "J"), .Cells(.Cells(.Rows.Count, "J").End(xlUp).Row, "J")).Copy Destination:=Subwb.Subsht.Range("K15")
End With

Application.CutCopyMode = False





End Sub

但是我认为这没有任何意义,运行该应用程序可能需要此文件。提供给客户端应用程序的所有文件都是公共的。不要将敏感数据保留在JS文件中,您可以将敏感信息保留在后端siede上的配置文件中,但不能与客户端应用程序共享它们。

答案 1 :(得分:1)

您好,您似乎需要调用firebase api。但是请不要在客户端的javascript中执行此操作,永远不要将敏感信息呈现给客户端。在服务器端进行呼叫,而不是从客户端发回邮件。