asp.net mvc将本地文件添加到Web服务器

时间:2014-07-14 15:04:31

标签: c# javascript asp.net http url

我正在使用ASP.Net MVC应用程序。在我的项目中,我有一个第三方JavaScript库,它以xml格式动态保存数据。使用一些C#服务器代码,我读取了这个xml数据并将其保存到我计算机上的本地文件中。

然后,我需要使用与以前相同的JavaScript库加载此数据。该库有一个加载函数,它将从http URL加载xml数据(不能给它一个本地文件路径)

我的问题是如何将我的文件放在本地服务器上,所以我可以调用该文件的http URL?

以下是我在第三方工具论坛上发布的问题:

http://forum.dhtmlx.com/viewtopic.php?f=6&t=37252&p=115601#p115601

任何帮助将不胜感激,谢谢!

javascript函数:

scheduler.load("http://localhost/Tasks.xml", "xml");

错误: enter image description here

2 个答案:

答案 0 :(得分:2)

出于安全原因,您无法直接从javascript中读取文件。浏览器不应该让您直接从磁盘访问文件。

您可以将文件放在IIS或其他Web服务器中并访问该URL。

For example: copy the file to C:\Inetpub\wwwroot\YourFile.xml

Access from http://localhost:80/YourFile.xml

在从API进行测试之前在Web浏览器中进行测试,以确保文件可以访问。

答案 1 :(得分:1)

在进行适当的安全检查后,您应该创建一个读取本地文件并将其返回的控制器操作。然后在您的Javascript中使用控制器/操作的URL。

在Web应用程序中保存文件的正确位置在App_Data目录中。如果您在Web应用程序目录中的任何其他位置更新文件,则会导致重新启动站点(以及应用程序池回收)。