Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ASP.NET 4.6 WEB API,不提供静态文件(.js、.css)IIS express visual studio_Javascript_C#_Asp.net_.net 4.6 - Fatal编程技术网

Javascript ASP.NET 4.6 WEB API,不提供静态文件(.js、.css)IIS express visual studio

Javascript ASP.NET 4.6 WEB API,不提供静态文件(.js、.css)IIS express visual studio,javascript,c#,asp.net,.net-4.6,Javascript,C#,Asp.net,.net 4.6,我一直在浏览网页,但仍然没有运气,因此我问。 我有一个WEB API 4.6项目,它也将是angularjs2应用程序的所在地, 我已设置为使用以下静态文件: var physicalFileSystem = new PhysicalFileSystem(@".\wwwroot\"); var options = new FileServerOptions { EnableDefaultFiles = true,

我一直在浏览网页,但仍然没有运气,因此我问。 我有一个WEB API 4.6项目,它也将是angularjs2应用程序的所在地, 我已设置为使用以下静态文件:

 var physicalFileSystem = new PhysicalFileSystem(@".\wwwroot\");
        var options = new FileServerOptions
        {
            EnableDefaultFiles = true,
            FileSystem = physicalFileSystem,
        };
        var contentTypes = new FileExtensionContentTypeProvider();

        options.StaticFileOptions.FileSystem = physicalFileSystem;
        options.StaticFileOptions.ServeUnknownFileTypes = true;
        options.StaticFileOptions.ContentTypeProvider = contentTypes;
        options.DefaultFilesOptions.DefaultFileNames = new[] { "index.html" };
        options.EnableDirectoryBrowsing = true;
        app.UseFileServer(options);

提供index.html,当index.html尝试获取所有文件(.css.js)时,控制台中会显示404错误。我已经启用了目录浏览,并且我看到文件在那里。

我发现我的代码运行良好,我只需将以下代码添加到我的web.config文件中

<system.webServer>
<handlers>
  <remove name="StaticFile"/>
  <add name="Owin" verb="" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb"/>
</handlers>


. 我相信这可能会被标记为重复或删除。

我发现我的代码运行良好,我只需将以下代码添加到我的web.config文件中

<system.webServer>
<handlers>
  <remove name="StaticFile"/>
  <add name="Owin" verb="" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb"/>
</handlers>


. 我相信这可能会被标记为重复或删除。

不用OWIN,您可以通过找到web.config设置(URL重写)从~/wwwroot提供静态文件。

不用OWIN,您可以通过web.config设置(URL重写)从~/wwwroot提供静态文件找到了。

只是好奇而已!为什么需要上面的代码来处理静态文件?我运行的MVC项目有一个MVC应用程序、WebAPI端点和Angular JS静态文件。没有上面的代码,一切似乎都能正常工作。我不是在使用mvc,我有一个针对angularjs2的独立项目,我只想在WWWRoot下构建它,只是好奇而已!为什么需要上面的代码来处理静态文件?我运行的MVC项目有一个MVC应用程序、WebAPI端点和Angular JS静态文件。没有上面的代码,一切似乎都能正常工作。我没有使用mvc,我有一个angularjs2的独立项目,我只想在WWW下构建它。你在Asp.Net 5/core上吗?不,我在使用4.6。你在Asp.Net 5/core上吗?不,我在使用4.6。