Почему браузер блокирует содержимое javascript?

У меня есть компонент изображения на моем веб-сайте asp.net, и я помещаю их в точное место с помощью css .. Я хочу сохранить все в одном изображении, и после некоторых копаний я нашел решение для получения снимка экрана с помощью html2canvas ... он работает нормально, и проблема в том, что после загрузки на сервер браузер заблокирует содержимое функции html2canvas, и я не знаю почему? функция холста фактически передает холст на сервер и сохраняет его как одно изображение в базе данных, но я не могу решить проблему блокировки, и после добавления исключения для этой страницы только она работает нормально .. но я хочу, чтобы пользователь напрямую обращался к странице без какой-либо всплывающей страницы, которая нужно разрешение или сказать, что этот сайт не авторизован ... поскольку я знаю, что html2canvas - это бесплатная лицензированная библиотека и не требует какой-либо лицензии ... вот мой код для изображений:

    <div  id="imageBody">
    <asp:Image ImageUrl="img/bgA4.png" height="364" width="216" runat="server" ID="img1" />
    <asp:Image ImageUrl="img/darAghabChap/default.png" id="imgdarAghabChap" runat="server"  />
    <asp:Image ImageUrl="img/darAghabRast/default.png" id="imgdarAghabRast" runat="server" />
    <asp:Image ImageUrl="img/darJeloChap/default.png" id="imgdarJeloChap" runat="server" />
    <asp:Image ImageUrl="img/darJeloRast/default.png" id="imgdarJeloRast" runat="server" />
    <asp:Image ImageUrl="img/gelgirAghabChap/default.png" id="imggelgirAghabChap" runat="server" />
    <asp:Image ImageUrl="img/gelgirAghabRast/default.png" id="imggelgirAghabRast" runat="server" />
    <asp:Image ImageUrl="img/gelgirJeloChap/default.png" id="imggelgirJeloChap" runat="server" />
    <asp:Image ImageUrl="img/gelgirJeloRast/default.png" id="imggelgirJeloRast" runat="server" />
    <asp:Image ImageUrl="img/kapoot/default.png" id="imgkapoot" runat="server"  />
    <asp:Image ImageUrl="img/separJelo/default.png" id="imgseparJelo" runat="server" />
    <asp:Image ImageUrl="img/separJeloChap/default.png" id="imgseparJeloChap" runat="server" />
    <asp:Image ImageUrl="img/separJeloRast/default.png" id="imgseparJeloRast" runat="server" />
    <asp:Image ImageUrl="img/saghf/default.png" id="imgsaghf"  runat="server"/>
    <asp:Image ImageUrl="img/sandogh/default.png" id="imgsandogh" runat="server" />
    <asp:Image ImageUrl="img/separAghab/default.png" id="imgseparAghab" runat="server"/>
    <asp:Image ImageUrl="img/separAghabChap/default.png" id="imgseparAghabChap" runat="server"/>
    <asp:Image ImageUrl="img/separAghabRast/default.png" id="imgseparAghabRast" runat="server"/>
</div> 

Функция html2canvas:

    <script type="text/javascript">
function ConvertToImage(btnExport) {
    html2canvas($("#imageBody")[0]).then(function (canvas) {
        var base64 = canvas.toDataURL();
        $("[id*=hfImageData]").val(base64);
        __doPostBack(btnExport.name, "");
    });
    return false;
}

and this is code behind which make the canvas save to database :

     Protected Sub ExportToImage(sender As Object, e As EventArgs)
    ' vehBodyId = 25
    If Session("UserId") = "" Then
        Response.Redirect("~/Default.aspx")
    Else
        vehBodyId = idMaker("select max(vehBodyId) from VehicleBody", "vehBody")
        Session("vehBodyId") = vehBodyId
        Dim base64 As String = Request.Form(hfImageData.UniqueID).Split(",")(1)
        Dim bytes As Byte() = Convert.FromBase64String(base64)
        'insert to db
        sql = "insert into VehicleBody (vehBodyId,imgBody) values(@vehBodyId,@imgBody)"
        If con.State = ConnectionState.Closed Then
            con.ConnectionString = constr
            con.Open()
        End If

        cmd.CommandText = sql
        cmd.Parameters.Clear()
        cmd.Parameters.Add("@vehBodyId", SqlDbType.Int).Value = vehBodyId
        cmd.Parameters.Add("@imgBody", SqlDbType.Image).Value = bytes
        cmd.CommandType = CommandType.Text
        cmd.Connection = con
        cmd.ExecuteNonQuery()
        con.Close()
        btnShowReport.Enabled = True

               End If

person Farnaz Bagheri    schedule 14.05.2017    source источник
comment
можешь на всякий случай показать код для btnExport? функция вообще начинает работать?   -  person wazz    schedule 14.05.2017
comment
да, код будет работать отлично, когда я добавлю исключение в браузер и удалю содержимое безопасности страницы. я отредактировал свой пост и написал там всю функцию экспорта ...   -  person Farnaz Bagheri    schedule 15.05.2017


Ответы (1)


Я наконец выяснил, почему html2canvas не работал с сертификатом ssl, и я просто хочу поделиться, если у кого-то такая же проблема ... это потому, что я связался с jquery и html2canvas ... я загружаю их и связываю с моего сервера, и он работает правильно

person Farnaz Bagheri    schedule 15.05.2017