我正在运行移动服务实例( C#backend ),除了所有其他功能外,我还需要托管一些html页面及其各自的css文件。
以下是我的尝试:
http://<service-url>/myfile.html
,我会收到404错误。所以我
创建了一个myfile.html
文件,并将其粘贴在项目根文件夹中。现在,我得到一个空白页而不是404。 ContentController
中尝试浏览<project root>\api\Content\Views\myfile.html
。当我浏览http://<service-url>/api/Content/Views/myfile.html
时,我会看到一个空白页。答案 0 :(得分:0)
2015年12月更新 既然微软已经发布了应用服务,您应该使用它 - 创建一个移动应用程序和一个Web应用程序,您就完成了。 不要试图破解移动服务。 我总觉得移动服务是半生不熟的解决方案。它更像是Parse.com和类似的BaaS的竞争者,并且错过了很多你期望从Azure服务中获得的东西。
<强>更新强> 下面的解决方案不起作用,但它确实教会了很多关于如何构建移动服务的知识。解决方案不起作用的原因是Azure拒绝将静态文件上载到移动服务实例。
首先要了解Owin是什么,移动服务正在使用它。 This post给了我很多帮助。
然后查看this link,其中介绍了如何使用katana构建文件服务器。
以下是简短说明:
安装nuget包Microsoft.Owin.StaticFiles
。
插入OwinAppBuilder
并指示它在您运行原始文件之前使用Katana的文件服务器(将其放在WebApiConfig.cs
中):
var originalAppBuilder = StartupOwinAppBuilder.OwinAppBuilder;
StartupOwinAppBuilder.Initialize(builder =>
{
builder.UseFileServer("/static");
originalAppBuilder(builder);
}
在项目根目录中创建一个static
文件夹,在其中放置一些文件并浏览到<your service url>/static/somefile.html
。