0

自分のサイトのバナーを他のサイトに提供したいのですが、バナーをサーバーに保持し、Facebook プラグイン/Google 広告のように JavaScript を含めてもらいたいです。

バナーはサイト A でホストされています。サイト BI には次のコードがあります。

<div id="bannerContainer"></div>
<script type="text/javascript" src="http://mysite.com/plugins/includebanner.js"></script>

includebanner.js は AJAX 呼び出しを実行してバナーを取得し、bannerContainer 内に配置しますが、エラーが発生します:

Origin http://lventas.com is not allowed by Access-Control-Allow-Origin.

すべての Web サイトにバナーを含めることを許可するにはどうすればよいですか? サイト A でホストされているバナーを他のサイトから含める簡単な方法はありますか?

編集:

This is the script that requests the content:

function ajax(url, id_contenedor)
{
    var pagina_requerida = false;
    if (window.XMLHttpRequest)
    {
        pagina_requerida = new XMLHttpRequest ();
    } else if (window.ActiveXObject)
    {
        try 
        {
            pagina_requerida = new ActiveXObject ("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                pagina_requerida = new ActiveXObject ("Microsoft.XMLHTTP");
            }
            catch (e)
            {
            }
        }
    } 
    else
    return false;
    pagina_requerida.onreadystatechange = function ()
    {
        cargarpagina (pagina_requerida, id_contenedor);
    }
    pagina_requerida.open ('GET', url, true); // asignamos los métodos open y send
    pagina_requerida.send (null);
}
function cargarpagina (pagina_requerida, id_contenedor)
{
    if (pagina_requerida.readyState == 4 && (pagina_requerida.status == 200 || window.location.href.indexOf ("http") == - 1))
    document.getElementById (id_contenedor).innerHTML = pagina_requerida.responseText;
}

ajax('http://lujanventas.com/plugins/banner/index.php', 'banner-root');
4

2 に答える 2

0

通常の JS クロスサイト スクリプティングの制限に遭遇しているようです。デフォルトでは、クロスサイト スクリプティング機能により、何と誰がエンドポイントを呼び出すことができるかについて、いくつかの制限が適用されます。コードに関して何をしようとしているのかのサンプルは提供していませんが、例としてこのリンクを確認できます: http://jquery-howto.blogspot.com/2009/04/cross-domain-ajax-querying -with-jquery.html

編集:

JavaScript呼び出し自体を確認するのに役立ちますが、エラーをGoogleまたはBingにプラグインすると、最初の結果は別のSO投稿でした: XmlHttpRequestエラー: Origin null is not allowed by Access-Control-Allow-Origin

于 2012-05-29T15:51:46.607 に答える
0

javascript/jquery を使用すると、div の代わりに iframe を描画し、その src 属性をバナーの URL に設定できます。

$('<iframe />', {
    name: 'myFrame',
    id:   'myFrame',
    src:  'http://www.mywebsite.com/'
}).appendTo('body');
于 2012-05-29T16:02:55.900 に答える