2017-02-07 1 views
0

Мне удалось отобразить двоичное изображение из базы данных для управления изображением с помощью универсального обработчика. Я хочу открыть изображение на новой вкладке или скопировать его адрес ссылки, щелкнув правой кнопкой мыши. Но используемым URL является адрес общего обработчика (http://localhost:1948/admin/imghndlr.ashx?serial=qwertyuiop). Я попытался выполнить поиск, но не получил никаких результатов, возможно, неправильно использовал ключевые слова. Ниже приведен снимок экрана на новой вкладке. Right Click>Open image on new tabКак открыть изображение в новой вкладке от общего обработчика?

+0

Вы преобразовали обратно двоичные данные в изображение перед настройкой на элемент управления? –

+3

, который выглядит как PNG (см. Первые несколько букв), но отправляется с неправильным заголовком заголовка заголовка/типа mime, см. Здесь http://stackoverflow.com/a/1031144/74585 –

ответ

0

Как вы показываете изображение?

Ваш файл вида должен выглядеть примерно так, конечно, вам нужно изменить данные: image/jpeg, на каком расширении файла вы используете.

<img alt="" src="data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAsMAAAGhCAIAAAALOi7ZAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QgLEhM6PUSGrwAAIABJREFUeNq8vcuSLEmWHKZ6jnlEZt5761Z3T/eAHAICAYRcEALsuOCWPzbzDfwP/gKXWJACoRDCBSkEBgPhADKY7qnu+4wIdztHuThmHh55q2t6ho+SlpaqyMwID3ez89CjqsY//dM//bM/+zMc/pGE3//PT/z09/1I0t/1Rz/x+o9+0I++vv/n8fU/8MW/9U9+9JVvL/v/u1cy86cv5ttfePXKq//8fTfhp+/qT3/oq8v+6V/+Ay/v25/+4X/46nqO"/> 

Также, если его файл байта не забудьте его преобразовать.

Convert.ToBase64String(Foto); 
0

Необходимо добавить данные mime-type, чтобы браузер не знал, какой тип данных вы ответили. добавленный код выглядит следующим образом:

public void ProcessRequest(HttpContext context) 
{ 
    //image/png is png mime 
    context.Response.ContentType = "image/png"; 
    //read buffer from database 
    context.Response.BinaryWrite(buffer); 
} 
Смежные вопросы