SORU
17 Kasım 2013, Pazar


&; 'Access-Control-Allow-Origin' Başlığı istenen kaynak" üzerinde mevcut " Hayır;

RESTful API Flask dahili bağlanarak yetkilendirme JavaScript kullanarak yapmaya çalışıyorum.

Sonuç olarak alıyorum:

XMLHttpRequest cannot load http://myApiUrl/login. No
'Access-Control-Allow-Origin' header is present on the requested
resource. Origin 'null' is therefore not allowed access.

API ya da uzak kaynak Başlığı ayarlamak gerektiğini biliyorum, ama neden Chrome uzantısı POSTACI yetkilendirme test ettim ne zaman işe yaradı?

Bu kodu iste

$.ajax({
    type: "POST",
    dataType: 'text',
    url: api,
    username: 'user',
    password: 'pass',
    crossDomain : true,
    xhrFields: {
        withCredentials: true
    }
})
    .done(function( data ) {
        console.log("done");
    })
    .fail( function(xhr, textStatus, errorThrown) {
        alert(xhr.responseText);
        alert(textStatus);
    });

CEVAP
17 Kasım 2013, Pazar


Eğer doğru anladıysam sayfanızda daha farklı bir etki için XMLHttpRequest bir iş yapıyorsunuz. Tarayıcı genellikle güvenlik nedenleriyle aynı kökenli bir istek sağlar engelliyor. Etki alanları arası bir istek yapmak istiyorsanız, farklı bir şey yapmak gerekir. Bu elde etmek için nasıl bir öğreticiUsing CORS.

Postacı kullanırken bu Politika ile sınırlı değildir. AlıntıCross-Origin XMLHttpRequest:

Normal web sayfaları XMLHttpRequest nesnesi ve uzak sunuculardan veri almak ve göndermek için kullanabilirsiniz, ama aynı kökenli ilke ile sınırlı. Uzantıları bu kadar sınırlı değil. Bir uzantısı kökeni dışında uzak sunuculara, ilk kökenli çapraz izinleri istekleri sürece konuşabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bennythecoder

    Bennythecode

    25 Mart 2008
  • guau . .

    guau . .

    25 Ocak 2008
  • Kai Moosmann

    Kai Moosmann

    5 Temmuz 2006