У меня есть pip , distribute , virtualenv и ] virtualenvwrapper установлен в мои пакеты сайтов Python 2.7 ( фреймворк Python, установленный в Mac OS X ). В моем ~ / .bash_profile
у меня есть строка
export PIP_DOWNLOAD_CACHE=$HOME/.pip_download_cache
Это дает следующий рабочий процесс:
$ mkvirtualenv pip-test
$ pip install nose # downloaded and installed from PyPi
$ pip install mock # downloaded and installed from PyPi
$ mkvirtualenv pip-test2
$ pip install nose # installed from pip's download cache
$ pip install mock # installed from pip's download cache
Поскольку я не загружаю пакеты, которые были ранее установлены в другом virtualenv, это рабочий процесс экономит время и пропускную способность. Однако это не экономит место на диске, поскольку каждый пакет будет установлен в каждый virtualenv. Поэтому мне интересно:
Я пробовал использовать add2virtualenv , который является частью virtualenvwrapper. Хотя это «добавляет указанные каталоги к пути Python для активного в настоящее время virtualenv», оно не добавляет никаких исполняемых файлов, находящихся в каталоге virtualenv / bin
. Следовательно, следующее не удастся:
{context.Response.Clear (); context.Response.ContentType = "...
Я генерирую изображение штрих-кода в качестве ответа от обработчика HTTP, например:
public void ProcessRequest(HttpContext context)
{
context.Response.Clear();
context.Response.ContentType = "image/Jpeg";
MemoryStream ms = new MemoryStream();
Bitmap objBitmap = GenerateBarcode(context.Request.Params["Code"]);
objBitmap.Save(ms, ImageFormat.Jpeg);
context.Response.BinaryWrite(ms.GetBuffer());
}
Я перехожу на http://www.MyWebsite.com/ MyProject / BarCode.aspx? Code = 12345678 , и он отлично работает. Точно так же я использую
на моей веб-странице, и он отлично работает. Но я вставляю тот же тег изображения в электронное письмо в формате HTML, и он не отображается (по крайней мере, в MS Outlook 2007; я еще не тестировал другие почтовые клиенты .)
Я предполагаю, что это как-то связано с тем фактом, что я использую обработчик HTTP, поскольку другие статические изображения в электронном письме отображаются нормально. Как я могу исправить это, чтобы изображение отображалось? (Я могу' Просто используйте статическое изображение, потому что код определяется во время отправки электронного письма.)
Обновление:
Оказывается, я не заметил ключевой детали. Изображение не просто не отображается; скорее атрибут изображения src заменяется на " http://portal.mxlogic.com/images/transparent.gif ". Я определил, что использование расширений .aspx или .ashx запускает эту замену (или, возможно, любое расширение, кроме тех, которые ожидаются для изображений, таких как .gif или .jpg), и что включает строку запроса в URL также запускает это, даже если это стандартное расширение изображения. Я предполагаю, что это какая-то чрезмерная функция безопасности. Поэтому включение изображения вроде BarCode.aspx? Code = 12345678 просто не сработает.
Мне приходит в голову, что я мог бы сделать что-то вроде
, а затем создайте обработчик для всех файлов с именем BarCode.jpg. Здесь 12345678 / не является фактическим путем, но это не имеет значения, поскольку я перенаправляю запрос обработчику и могу очистить значение кода от этого фальшивого пути в URL-адресе. Но мне, вероятно, придется изменить некоторые настройки IIS, чтобы запросы на файлы .jpg обрабатывались ASP.NET, и я бы хотел убедиться, что другие JPEG, кроме моего BarCode.jpg, загружаются нормально. .
Честно говоря, я не уверен, что это того стоит.