Как обслуживать андроид приложение из ASP.NET Core MVC - PullRequest
0 голосов
/ 07 мая 2018

Можно ли использовать этот URL domain.tld/android_application_name.apk для обслуживания приложения Android apk файл из каталога AndroidApplications?

Другими словами, у меня есть папка с папкой Controllers и папкой wwwroot и Program.cs файлом. Он называется AndroidApplications и внутри него у меня есть куча .apk файлов. Но я не хочу добавлять дополнительный сегмент в URL для них. Я хочу иметь возможность обслуживать app1.apk по этому URL: domain.tld/app1.apk. Как мне этого добиться?

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Я видел несколько ответов вроде: 1) добавить расширение ".apk" и соответствующий тип MIME в IIS

введите описание изображения здесь

2) добавить узел под узлом system.webServer узла web.config

Но ни одна из них не работает.

Итак, я нашел другое решение, и оно работает для меня

3) установите для параметра ServeUnknowFileType для StaticFileOptions значение true в методе настройки запуска

var staticFileOptions = новые StaticFileOptions { ServeUnknownFileTypes = true };

        app.UseStaticFiles(staticFileOptions);

Но меня беспокоит проблема безопасности.

Кроме того, два вышеупомянутых решения могут быть только для Windows, это все еще будет проблемой при переносе в Linux, исправьте меня, если я ошибаюсь.

0 голосов
/ 07 мая 2018

Вам стоит взглянуть на Промежуточное программное обеспечение для перезаписи URL .

public void Configure(IApplicationBuilder app)
{
    var options = new RewriteOptions()
        .AddRewrite(@"^(.*?\.apk)$", "AndroidApplications/$1", 
            skipRemainingRules: true)

    app.UseRewriter(options);
}

Это должно переписать все URL-адреса, заканчивающиеся на apk, то есть с /myapp.apk URL-адресов до /AndroidApplications/myapp.apk.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...