2016-01-18 15 views
5

Web sayfamı yüklemeye çalıştığımda aşağıdaki hatayı alıyorum: İstek başlık alanı Erişim Denetimi-İzin Ver Ön kontrol ışığında Erişim-Kontrol-İzin Başlıkları tarafından -Origin'e izin verilmez.İstek üstbilgisi alanı Ön kontrol ışığında Erişim-Denetim-İzin-Başlıkları tarafından Erişim-Denetim-İzin-Kökenli'ye izin verilmiyor

Bu soruna yanıt veren diğer yanıtlara baktım ve CORS desteğinin eksik olduğunu belirtiyorlar. Kafa karıştırıcı şey, korsam desteğim! En azından benim yaptığımı düşünüyorum.

İşte

benim AJAX çağrısıdır:

window.feed = function(callback) { 
    $.ajax({ 
     type: "GET", 
     dataType: "json", 
     headers: { 
      Accept: "application/json", 
      "Access-Control-Allow-Origin": "*" 
     }, 
     url: "http://localhost:3000/readings", 
     success: function (data) { 
      var mem = data.mem.size/10000; 
      var tick = { 
       plot0: parseInt(mem) 
      }; 
      callback(JSON.stringify(tick)); 
     } 
    }); 
: Ben Açısal JS ön ucuna Zingchart bağlanmaya çalışırken ve (3000 localhost de) benim REST API verileri almak için bir AJAX isteği kullanıyorum

Benim DİNLENME API uygulama şunları içerir:

Benim REST API Bu eğitimde yardımı ile inşa edilmiştir
// CORS Support 
app.use(function(req, res, next) { 
    res.header('Access-Control-Allow-Origin', '*'); 
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); 
    res.header('Access-Control-Allow-Headers', 'Content-Type'); 
    next(); 
}); 

: https://www.youtube.com/watch?v=OhPFgqHz68o

cevap

6

"headers" ve "dataType"'u çıkarın. İsteğiniz şöyle görünecektir:

$.ajax({ 
    type: "GET", 
    url: "http://localhost:3000/readings", 
    success: function (data) { 
     var mem = data.mem.size/10000; 
     var tick = { 
      plot0: parseInt(mem) 
     }; 
     callback(JSON.stringify(tick)); 
    } 
}); 
Başlıklarınız, ön kontrol isteğini tetikliyor. Eğer Açısal kullanıyorsanız

, ben çok AJAX için jQuery kullanılmasını önermiyoruz yerine Açısal en built-in $http service kullanmak olur.

ZingChart ekibindeyim. Holler senin çizelgelerinize yardım edebilirse.

+0

Teşekkürler Patrick! $ Http hizmetinde daha iyi çalışırsa, kullanmaktan mutluluk duyarım. Kullanabileceğim örnekler var mı? Yapacağım şey, veriyi arka uçtan alması ve ardından Zingcharts formatı gereksinimlerine uyması için cevabı ayrıştırmak için bu kütüphaneyi kullanmaktır, ben yeniyim, bu doğru mu? – Django

+0

İlk önce: eğer cevap probleminizi çözerse, lütfen kabul edin. | Doğru geliyor. Yukarıda yayınladığım bağlantı, $ http hizmetini kullanma hakkında birçok bilgiye sahiptir. Ayrıca burada bulunan Angular ile AJAX kullanarak bir demo var: http://codepen.io/zingchart/pen/pjerjY –

+0

Elbette cevabınızı kabul ediyorum elbette. Geliştirici araçlarında, kodunuz bana şu sorunu verir: Yakalanmamış TypeError: Tanımlanmayan mülkün boyutlarını okuyamaz. Bunun neden olabileceğini biliyor musun? – Django

İlgili konular