使用Javascript读取.net配置文件(不是aspx页面中的Javascript)
有没有一种简单的方法可以在html页面中使用javascript从(asp.net)web.config文件读取设置 顺便说一句,我在aspx页面中找到了将配置设置传递到javascript块的示例,例如使用Javascript读取.net配置文件(不是aspx页面中的Javascript),.net,javascript,web-config,.net,Javascript,Web Config,有没有一种简单的方法可以在html页面中使用javascript从(asp.net)web.config文件读取设置 顺便说一句,我在aspx页面中找到了将配置设置传递到javascript块的示例,例如 <script type="text/javascript"> function ReadConfigSettings(){ var wibble = '<%=ConfigurationManager.ConnectionStrings["MyConnString
<script type="text/javascript">
function ReadConfigSettings(){
var wibble = '<%=ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString %>' }
</script>
函数ReadConfigSettings(){
var wibble='''}
但这不是我想要做的。我需要从独立的html页面中读取设置。您不能。配置文件是服务器端的,无法从客户端访问(故意且非常正确)。如果HTML/Javascript是从IIS中的虚拟目录运行的,则无法直接访问Javascript中的.config文件,因为asp.net处理程序阻止提供.config文件。因此,无需将文件加载到IFrame/Ajax请求中 一个选项是服务器上的.aspx文件,它从.config文件返回适用的值,因此:
从Javascript调用将返回“ConnectionStringGoesher”的XML,然后可以使用该XML。?这是一个老问题,但另一个建议,尽管它可能不适合您使用纯HTML页面进行访问的要求 然而,我正在尝试做类似的事情 也许是主页上的类似内容
<script type="text/javascript">
function ReadConfigSettings(){
Window.wibble = '<%=ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString %>'
}
</script>
函数ReadConfigSettings(){
Window.wibble=''
}
这使得Window.wibble成为一个全局变量,可以从其他地方访问
这方面的变化包括将它放在一个隐藏的输入div中,并通过jQuery/ElementById在别处访问它。。。
我确实喜欢这样的东西
<input id="connString" type="hidden" value="@Mvc.Utils.GetConnectionString()" />
实际上,只需使用服务器端将值添加到html中,然后在客户端加载值
但是,由于您需要纯HTML,并且它是您要传递的连接字符串,因此出于安全等原因,这可能会失败,但它可以用于读取简单的web配置值。很好的建议。谢谢你的帮助。作为一个web服务,asmx文件不是更好吗?如果Javascript可以读取你的连接字符串,你会有严重的安全问题。