Evet, ne düşündüğünüzü biliyorum - bir başka CORS sorusu, ama bu sefer şaşkınım.
Yani başlamak için gerçek hata mesajı:
XMLHttpRequest http: //localhost/Foo.API/token'ı yükleyemiyor . Yanıttaki 'Access-Control-Allow-Origin' başlığının değeri, isteğin kimlik bilgileri modu 'include' olduğunda '*' joker karakteri olmamalıdır . Bu nedenle ' http: // localhost: 5000 ' kaynağına erişime izin verilmiyor. XMLHttpRequest tarafından başlatılan isteklerin kimlik bilgileri modu withCredentials özniteliği tarafından kontrol edilir.
Kimlik bilgileri modu ile ne kastedildiğinden emin değilim 'dahil et' ?
Ben postacı isteği gerçekleştirirken Yani, tecrübe yok böyle hata:
Ancak aynı isteğe angularjs web uygulamam aracılığıyla eriştiğimde, bu hata beni şaşırttı. İşte angualrjs isteğim / cevabım. Göreceğiniz gibi yanıt şudur OK 200
, ancak yine de CORS hatasını alıyorum:
Fiddler İsteği ve Yanıtı:
Aşağıdaki görüntü, web ön ucundan API'ye olan isteği ve yanıtı göstermektedir
İnternette okuduğum diğer tüm gönderilere bakılırsa , doğru şeyi yapıyorum gibi görünüyor , bu yüzden hatayı anlayamıyorum. Son olarak, angualrjs'de kullandığım kod (giriş fabrikası):
API'de CORS Uygulaması - Referans amaçları:
Yöntem 1 kullanıldı:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
EnableCrossSiteRequests(config);
}
private static void EnableCrossSiteRequests(HttpConfiguration config)
{
var cors = new EnableCorsAttribute("*", "*", "*")
{
SupportsCredentials = true
};
config.EnableCors(cors);
}
}
Yöntem 2 kullanıldı:
public void Configuration(IAppBuilder app)
{
HttpConfiguration config = new HttpConfiguration();
ConfigureOAuth(app);
WebApiConfig.Register(config);
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
app.UseWebApi(config);
}
Şimdiden çok teşekkürler!
*
, böylece sunucu tarafı yanlış CORS'yi yapıyor - - ah ve postacı işleri nedeniyle çapraz kökenli bir istek değil