4

我正在使用 SOAP Web 服务从另一台服务器获取响应。我正在使用 Jquery ajax 调用从服务器获取数据。但我从服务器获取0(零)状态码。

如何使用 Jquery 实现跨域 ajax 调用?

4

2 回答 2

1

与其尝试使用 jQuery 获取跨域数据,不如尝试使用 PHP 或其他允许跨域访问的语言获取数据。创建一个加载 SOAP 数据的 PHP 页面,并使用 jQuery 将该信息嵌入到您的页面中。虽然它不是 SOAP 连接,但为了说明这个想法,您可以创建这个 PHP 页面来加载 Youtube 视频:

<?php
$vid = filter_var($_POST['id'], FILTER_SANITIZE_STRING);
?>
<?php if ($vid) : ?>
    <iframe title="YouTube video player" width="510" height="317" src="http://www.youtube.com/embed/<?php echo $vid; ?>?autoplay=1" frameborder="0" allowfullscreen></iframe>
<?php endif; ?>

然后使用 jQuery 来显示它——点击一个链接可以调用这个函数:

function loadContent() {
$(this).parent().load("/youtube-video.php",{id:video_id},showNewContent());
}
于 2013-03-11T06:50:50.030 回答
0

你的问题似乎很模糊。但下面是在 jQuery 中进行跨域请求的一种方法:

$(function() {
            $.ajax({
                type:'GET',
                dataType:'jsonp',
                jsonp:'jsonp',
                url:'http://api.stackoverflow.com/1.0/tags/',
                success:function(data) {
                    $.each(data["tags"], function(index, item) {
                        var $tag = item.name;
                        var $count = item.count;
                        $("body").append('<div class="stackoverflow"> The Tag
              <span class="q-tag">' + $tag + '</span> has <
span class="q-count">'
 + $count + '</span> Questions.</div>')
                    });
                },
                error:function() {
                    alert("Sorry, I can't get the feed");  
                }
            });
        });

演示

上述说明

于 2013-03-11T09:00:28.430 回答