如何在 jsonp 回调中返回跨域 html

How to return cross domain html in jsonp callback

本文关键字:返回 html 回调 jsonp      更新时间:2023-09-26

我正在尝试为网站构建嵌入式小部件。这个小部件将使用javascript从外部网站调用。

当我的小部件脚本添加到下面的网页时,代码运行:

var widget = {
    initialize : function(containerId)
    {
        (function($) {
        var url = 'http://localhost:8002/callback.js';
        $.ajax({
            url: url,
            jsonpCallback: 'jsonCallback',
            contentType: "application/json",
            dataType: 'jsonp',
            success: function(data) {
               $("#" + containerId).html(data);
            },
            error: function(e) {
               console.log(e.message);
            }
        });
        })(jQuery);
    }
}

这段代码将我的小部件嵌入到给定的 HTML 容器 (div) 中,这是我的回调:

jsonCallback(
    {"html": "<html><body>mahmut tuncer</body></html>" }
);

因此,当我将硬编码的html作为json提供时,它可以工作。现在,我需要做的是:在将我的回调发送回请求网站之前,将另一个 html 文件作为 json 加载。

如果您使用的是 JSONP 并且收到跨域异常,这意味着您尝试从中提取数据的源不支持 JSONP。您可以考虑使用 node.js 或其他东西来完成您的任务。