我试图通过将数据提取到网页中来使用Beanstalk(beanstalkapp.com)API,以便人们可以查看它而无需访问我的SVN.
我正在尝试访问它的方法是通过jQuery使用AJAX请求.代码在下面,但是每次都会出现错误,并且无法返回数据.
<script type="text/javascript">
$(document).ready(function() {
var tok = 'username' + ':' + 'password123';
hash = btoa(tok);
authInfo = "Basic " + hash;
$.ajax({
url: "http://username.beanstalkapp.com/api/changesets.json",
beforeSend: function (xhr) { xhr.setRequestHeader ("Authorization", authInfo); },
type: "GET",
async: false,
crossDomain: true,
dataType: "json",
success: function(html){
console.log(html);
},
error: function(html){
console.log('error');
}
});
});
</script>
如果我直接通过浏览器(http://username.beanstalkapp.com/api/changesets.json)访问该URL,它就可以正常工作并返回json.但是,我无法获得AJAX来返回它.任何帮助表示赞赏.谢谢!
解决方法:
您将需要为跨域ajax请求创建代理.
通常情况如下:
>客户端向服务器发送Ajax请求
>您的服务器将请求转发到外部/远程服务器
>等待来自远程服务器的响应
>解析和处理来自远程服务器的响应
>将回复发送回客户端
如果您使用的是PHP,则可以发送带有curl的请求,并且很容易实现.我最近在http://www.svlada.com/proxy-ajax-requests-curl-and-symfony-2/上写过有关该主题的文章.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。