Недопустимый тип MIME-манифеста при использовании через обработчик ashx - PullRequest
0 голосов
/ 01 февраля 2012

Я генерирую свой манифест кэша на лету в обработчике, устанавливая тип контента "text / cache-manifest". Однако когда я загружаю свою кэшированную страницу в Chrome, я получаю следующую ошибку в консоли Chrome (обратите внимание на пустую строку в скобках), и файлы никогда не обновляются:

Application Cache Error event: Invalid manifest mime type () http://localhost:4010/WebClient/CacheManifest.ashx

Раньше почти год это работало нормально, и как внезапно это произошло.

Есть идеи?

Вот код для CacheManifest.ashx:

public class CacheManifest : IHttpHandler
{
    public bool IsReusable
    {
        get
        {
            return true;
        }
    }

    public void ProcessRequest(HttpContext context)
    {
        HttpResponse response = context.Response;
        response.Clear();
        response.ContentType = "text/cache-manifest";

        StringBuilder output = new StringBuilder();

        output.AppendLine("CACHE MANIFEST");
        output.AppendLine();
        output.AppendLine("CACHE:");

        // here's the code that loads files from disk and adds to manifest.

        // allow online resources
        output.AppendLine("NETWORK:");
        output.AppendLine("*");

        output.AppendFormat("# hash: {0}", GetContentHash());

        response.Write(output.ToString());
    }
}

1 Ответ

0 голосов
/ 02 июля 2012

Основываясь на моем тестировании, это связано с localhost. Веб-браузер не может загрузить его с локального хоста. Когда я делаю развертывание в производство (настоящий веб-сервер в сети), оно работает безупречно.

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