0

http ://localhost/fileread.phpへのテキストを要求する JavaScript を作成し、応答をhttps :// 接続 ( https://translate.google.com/) を使用して Web サイトのテキストエリアに配置しました。一部のコンテンツをhttp Web サイトからhttps Web サイトに移動しているため、混合コンテンツ ポリシーにより、Firefox では許可されていません。security.mixed_content.block_active_contentそこでto falseinのビットをオフにしましたabout:config。現在、通常の Firefox は警告を表示するだけで、コンテンツをそのテキストエリアにコピーできます。

しかし、セキュリティ上の理由から、 Firefox 開発者版でこのスクリプトを使用したいと考えています。私は同じことを行い、about:config で混合コンテンツを許可します。しかし、私のローカルホストからコンテンツを取得する ajax リクエストは失敗します。コード スニペットは次のとおりです。

function getFileContent(name){
    $.ajax({
        type: "post",
        url: "http://localhost/fileread.php",
        crossDomain: false,
        data: {"file":name},
        beforeSend: function(){},
        success: function(responseData, textStatus, jqXHR) {
             document.getElementById('textarea').innerHTML = responseData;
             //document.getElementById("gt-submit").click();
             DownloadFile(name);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            console.log("Ajax request failed");
            console.log(errorThrown);
        }
    });
}

通常の Firefox では機能しますが、開発者版では errorThrown = undefined で失敗します。それがjQueryの問題なのか、混合コンテンツの問題なのか、私にはわかりません。開発者版で動作させるにはどうすればよいですか?

PS : このスクリプトは、通常版と開発者版の両方で、http Web サイト ( ) で正常に動作します。また、この場合、 httpshttp://www.bing.com/translatorを使用するように Web サーバーをセットアップすることも有効な解決策ですが、私はそれを試してみましたが、惨めに失敗しました。だから、それは私にとって選択肢ではありません。

4

0 に答える 0