私は$http.get()
コールのためにクロスオリジンである必要がある単純なノードサーバーを作ったので、app.use
に必要なヘッダをthis答えとして追加します。最後に、サーバコードがある -
$http.get('http://itunes.apple.com/search', {
term: 'johnson'
});
が、それでもこの呼び出しは、ブラウザとリターンエラーによって拒否された - -
XMLHttpRequest cannot load https://itunes.apple.com/search. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
私
index.html
そこの角
$http.get()
は別の原点に呼びかけているで
var express = require('express');
var app = express();
var port = process.env.PORT || 3000;
app.use(express.static('.'));
app.all('/', function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
next();
});
app.listen(port);
console.log('server runs on port: ' + port);
から正確にどのようにクロスオリジンを呼び出すことができますか?$http.get
あなたがあなた自身のウェブサーバ上のCORSを許可し、それがアップルのサーバ上で許可されるだろう待つのはなぜ? –
私はノードで新しいです。もしyoeさんが..解決策を教えてください。 – URL87
短い答え:CORSがサーバー上で許可されていない間にあなたのウェブページからのクロスドメインリクエストを行うことは不可能です。あなたはiTunesで制御できないので、それを行うことはできません –