jQueryのgetメソッドを使用してXMLデータをロードしようとしています。 XMLフィードは、次のURLにあります。私は、ブラウザに次のコードを実行すると http://webservices.nextbus.com/service/publicXMLFeed?command=routeList&a=mbtaクロスドメインXMLHTTPRequestエラー
、私はエラーを取得する:
XMLHttpRequest cannot load http://webservices.nextbus.com/service/publicXMLFeed?command=routeList&a=mbta . Origin http://173.203.89.156 is not allowed by Access-Control-Allow-Origin.
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<title>Bus Map</title>
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0px; padding: 0px }
#map_canvas { height: 100% }
</style>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true">
</script>
<script type="text/javascript" src=" https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
var myLatlng = new google.maps.LatLng(42.3966499, -71.12188);
var myOptions = {
zoom: 14,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
$.get('http://webservices.nextbus.com/service/publicXMLFeed?command=routeList&a=mbta', function(stops) {
alert(stops[0]);
})
});
</script>
</head>
<body>
<div id="map_canvas" style="width: 100%; height: 100%"></div>
</body>
</html>
は断固としてすべてのクロスドメインをブロックし、このドメインであり、 XMLHTTPRequests、またはこのエラーをバイパスする場所はありませんか?
私はXHRを作成するたびに、リファラードメインとポートは同じでなければなりません。それはセキュリティ機能ですか? – Adam
@adam、はい、他のものの中でもプロトコルのように – hvgotcodes
私はこれまでに多くのWebサービスを使用してきました。何が違うのですか? – Adam