В C # я делаю
context.Response.ContentType = "image/png";
context.RewritePath(sz);
context.Response.ContentType = "image/png";
Похоже, что перенаправить путь, как я вижу, увидеть изображения на моих страницах. Однако в Firefox, когда я щелкаю правой кнопкой мыши и выбираю «просмотреть изображение», я получаю загрузку. Используя этот код на C ++, я вижу, что mime - это application / octet-stream
#include <curl/curl.h>
#include <ios>
#include <iostream>
#include <string>
#pragma comment(lib, "curllib")
using namespace std;
size_t function( void *ptr, size_t size, size_t nmemb, void *stream)
{
cout << (char*)ptr;
return size*nmemb;
}
size_t function2( void *ptr, size_t size, size_t nmemb, void *stream)
{
return size*nmemb;
}
int main()
{
CURL *c = curl_easy_init();
curl_easy_setopt(c, CURLOPT_HEADERFUNCTION, function);
curl_easy_setopt(c, CURLOPT_WRITEHEADER , 1);
curl_easy_setopt(c, CURLOPT_WRITEFUNCTION, function2);
curl_easy_setopt(c, CURLOPT_WRITEDATA, 0);
curl_easy_setopt(c, CURLOPT_URL, "http://localhost:3288/s/main/4/AAA.png");
curl_easy_perform(c);
curl_easy_cleanup(c);
return 0;
}
Мой вопрос: как мне установить MIME на правильный тип? Выше я жестко закодировал его в png, который не работает. Однако я, скорее, не жёстко кодирую любую пантомиму, и она работает. Я смог перенаправить XML-файл в somefile.aspx, чтобы страница установила тип содержимого и сгенерировала XML. Однако перезапись на путь изображения, кажется, позволяет изображению работать, я просто не получаю правильный тип.
Как мне исправить тип контента / пантомимы? Как план B, я перепишу в файл aspx. Какой лучший способ отправить изображение? Могу ли я сделать что-то вроде context.Response.OutputStream = stream ("filename");