ASPX, который возвращает изображение - кэшируемый вывод?

num = [8, 9, 4, 1, 2, 3]

def con(rng, pos=0):
    if pos < len(rng):
        if (pos > 0 and rng[pos]-1 == rng[pos-1]) or (pos < len(rng) -1 and rng[pos]+1 == rng[pos+1]):
            print("con", rng[pos])
        con(rng, pos+1)

con(num)

редактировать: это решение основано на параллельной функции и требует только список в качестве аргумента. Пока они находятся в пределах нижней / верхней границы списка, функция будет проверять, равны ли (предыдущее число) -1 или (следующее число) +1 (это число): con 8 con 9 con 1 con 2 con 3

6
задан Portman 12 July 2009 в 14:12
поделиться

3 ответа

Попробуйте отбросить Response.End (), так как это приведет к преждевременному завершению потока и предотвращению кэширования вывода.

См .: http://bytes.com/groups/net-asp/323363-cache-varybyparam-doesnt-work

. Вы можете пожелать рассмотреть возможность использования обработчика ASHX и использования свой метод кеширования.

10
ответ дан 9 December 2019 в 20:48
поделиться

Используйте универсальный обработчик ASHX и используйте HttpRuntimeCache (объект Cache), чтобы выполнить работу как Кодовый мозг сказал. Это будет быстрее и намного гибче.

2
ответ дан 9 December 2019 в 20:48
поделиться

Ваша проблема могла быть ошибкой в IE - он не может кэшировать, если Vary: * Заголовок ответа HTTP используется, но IIS возвращает его по умолчанию, поскольку он указан в спецификации HTTP 1.1.

Попробуйте добавить в свой web.config следующее:

<system.web> 
    <caching>
        <outputCache omitVaryStar="true" />
    </caching>
</system.web> 
0
ответ дан 9 December 2019 в 20:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: