在没有 Web.Config 的情况下更改 Azure 上接受的 MIME 类型
Change Accepted MIME Type on Azure without Web.Config
我想在我创建并通过 FTP 部署到 Azure 的网站上显示 .mp4 作为背景视频。
不幸的是,访问背景视频总是给我一个 404。
这些页面都是使用 AngularJS.
的 .html 文件
我认为我需要为 .mp4 添加自定义 MIME 类型。通常这会在 Web.Config 中完成,但由于它只是我在 Notepad++ 中突然想到的东西,所以我没有(除了这个问题,真的不需要)Web.Config。
我正在查看该站点的 Azure 门户中的“配置”部分,可以看到我可以在何处添加连接字符串和 appSettings,但我没有看到任何可以执行 MIME 类型的地方。
是否可以通过门户在 Azure 上使用 .mp4s,或者是我制作 Web.Config 和 FTP 的唯一选择吗?
唯一的方法是通过 Web.config 文件。下面的 link 将帮助您配置 web.config:
中的设置
Use SVG in Windows Azure Websites
我尝试了 web.config 解决方案,但它对我没有用,因为我使用 AuthInterceptor 全局设置 Headers。
export class AuthInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
req = req.clone({
setHeaders: {
'Content-Type' : 'application/json; charset=utf-8',
'Accept': 'application/json',
'Authorization': `Bearer ${token_here}`,
},
});
return next.handle(req);
}
}
因此,这也为 SVG 和其他媒体文件设置了 headers,就像您的 mp4 文件一样。所以,我过去常常根据请求类型和请求的资源类型来过滤传入的请求。下面是一段代码:
export class AuthInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
if (req.method === 'GET' && req.url.endsWith('.svg')) {
req = req.clone({
setHeaders: {
'Authorization': `Bearer ${btoa("admin:admin")}`,
},
});
}
else {
req = req.clone({
setHeaders: {
'Content-Type': 'application/json; charset=utf-8',
'Accept': 'application/json',
'Authorization': `Bearer ${btoa("admin:admin")}`,
},
});
}
return next.handle(req);
}
}
我想在我创建并通过 FTP 部署到 Azure 的网站上显示 .mp4 作为背景视频。 不幸的是,访问背景视频总是给我一个 404。 这些页面都是使用 AngularJS.
的 .html 文件我认为我需要为 .mp4 添加自定义 MIME 类型。通常这会在 Web.Config 中完成,但由于它只是我在 Notepad++ 中突然想到的东西,所以我没有(除了这个问题,真的不需要)Web.Config。
我正在查看该站点的 Azure 门户中的“配置”部分,可以看到我可以在何处添加连接字符串和 appSettings,但我没有看到任何可以执行 MIME 类型的地方。
是否可以通过门户在 Azure 上使用 .mp4s,或者是我制作 Web.Config 和 FTP 的唯一选择吗?
唯一的方法是通过 Web.config 文件。下面的 link 将帮助您配置 web.config:
中的设置Use SVG in Windows Azure Websites
我尝试了 web.config 解决方案,但它对我没有用,因为我使用 AuthInterceptor 全局设置 Headers。
export class AuthInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
req = req.clone({
setHeaders: {
'Content-Type' : 'application/json; charset=utf-8',
'Accept': 'application/json',
'Authorization': `Bearer ${token_here}`,
},
});
return next.handle(req);
}
}
因此,这也为 SVG 和其他媒体文件设置了 headers,就像您的 mp4 文件一样。所以,我过去常常根据请求类型和请求的资源类型来过滤传入的请求。下面是一段代码:
export class AuthInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
if (req.method === 'GET' && req.url.endsWith('.svg')) {
req = req.clone({
setHeaders: {
'Authorization': `Bearer ${btoa("admin:admin")}`,
},
});
}
else {
req = req.clone({
setHeaders: {
'Content-Type': 'application/json; charset=utf-8',
'Accept': 'application/json',
'Authorization': `Bearer ${btoa("admin:admin")}`,
},
});
}
return next.handle(req);
}
}