Javascript 跨域AJAX调用,授权文件';什么内容?

Javascript 跨域AJAX调用,授权文件';什么内容?,javascript,ajax,Javascript,Ajax,我想在我的网站上为其他网站提供一个横幅,但我想在我的服务器上保留这个横幅,并让他们使用javascript将其包括在内,就像Facebook插件/谷歌广告一样 横幅位于站点A。在站点B,我有以下代码: <div id="bannerContainer"></div> <script type="text/javascript" src="http://mysite.com/plugins/includebanner.js"></script> 如

我想在我的网站上为其他网站提供一个横幅,但我想在我的服务器上保留这个横幅,并让他们使用javascript将其包括在内,就像Facebook插件/谷歌广告一样

横幅位于站点A。在站点B,我有以下代码:

<div id="bannerContainer"></div>
<script type="text/javascript" src="http://mysite.com/plugins/includebanner.js"></script>
如何允许所有网站都包含该横幅?是否有其他简单的方法可以从其他站点将横幅包含在站点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');

您似乎遇到了正常的JS跨站点脚本限制。默认情况下,跨站点脚本功能会对调用端点的内容和用户施加一些限制。您没有提供任何代码方面的示例,但您可以查看此链接作为示例:

编辑:

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');

查看JavaScript调用本身会有帮助,但如果你将错误插入Google或Bing,我的第一个结果是另一个SO帖子:

使用JavaScript/jquery,你可以绘制一个iframe而不是div,并将其src属性设置为你的横幅的url

$('<iframe />', {
    name: 'myFrame',
    id:   'myFrame',
    src:  'http://www.mywebsite.com/'
}).appendTo('body');
$(“”{
名称:“myFrame”,
id:'我的框架',
src:'http://www.mywebsite.com/'
}).附于(“主体”);

我刚刚添加了对我所做工作的描述。我不认为我能做到这一点,因为我不能使用PHP。如果框架不是一个好主意,为什么不解决OP存在的错误,而不是恢复到一组遗留代码来绕过它呢?可能有更好的方法,比如代理反转,但他要求的是一个简单的javascript解决方案,不是吗?当然,我只是想尽可能避免使用iFrame,看起来这应该像他们试图做的那样,但是JS一般来说可能有问题,但是没有提供代码。我只是添加了代码。我认为没有必要,因为这是一个常规的ajax调用。