Получить изображение через jQuery AJAX

следующий тег изображения находится на моей странице входа

<img id="CaptchaImg" alt="Captcha" src="@url.action("Captcha","Login")" style="" />

теперь, когда я обновляю свою страницу входа, она отлично работает и получает изображение от контроллера, но когда я выхожу из системы и страница входа отображается .метод контроллера не вызывается.Проблема только в IE отлично работает на Chrome.Есть ли работа вокруг? Могу ли я что-то сделать с вызовом jQuery Ajax для контроллера, я пробовал это, но метод успеха не вызывается. Есть ли другой способ?

$.ajax({
    type: "GET",
    url: '/Login/CaptchaImage',
    datatype: "image",
    success: function(data) {
        debugger
        $('#CaptchaImg').attr('src', data);
    }
});

2 ответов


попробуй такое

$.ajax({
    type: "GET",
    url: '@Url.action("Captcha","Login")',
    dataType:"image/jpg",
    success: function (data) {
        $('#CaptchaImg').attr('src', data);
      }
 });

веб-сервер должен возвращать данные в формате base64. такой

{ base64Data:"blahblahblah" }

ваш запрос ajax content-type может быть простым json ; в вашей функции успеха в ajax вы можете сделать вот так

    success:function(data){
     var src="data:image/png;base64,"+data.base64Data;
      $('#CaptchaImg').attr(src,src)
}