Perkhidmatan Pemintas
.factory('sessionInjector', function ($rootScope) {
// Service logic
var sessionInjector = {
request: function(config) {
if ($rootScope.sysuser) {
config.headers['token'] = $rootScope.sysuser.token;
}
return config;
}
};
return sessionInjector;
});
Keputusan:
Saya menulis pengepala pemintas untuk menyuntik token, tetapi bagaimanakah cara saya menyuntik pengepala Access-Control-Request-Headers?
Pemintas suntikan ditulis seperti ini:
$httpProvider.interceptors.push('sessionInjector');
Sepatutnya betul, kan? Saya tidak tahu apa yang berlaku
Saya mengujinya kemudian dan menyuntiknya terus tanpa pemintas Ia sama seperti menambahkan pengepala pada satu permintaan dan menjalankan Pengepala Access-Control-Request-Headers
.
Dengan maklumat pengepala ini semasa membuat permintaan sebelum penerbangan, beritahu pelayan maklumat pengepala tersuai yang akan dibawa dalam permintaan sebenar Jika terdapat berbilang, anda boleh memisahkannya dengan koma.
Tajuk-Permintaan-Kawalan-Akses: <nama-medan>[, <nama-medan>]*
Saya mengalami masalah yang sama Selepas mencari di Google, saya mendapati orang lain juga mengalami masalah ini. Seseorang memberikan jawapan tanpa diduga, ia berkaitan dengan pelayan Dikatakan bahawa Angular menggunakan beberapa kaedah permintaan silang yang asli, yang menyebabkan pelayan tidak menyokongnya. Saya menjalankan pada http-server0.90, dan masalah ini berlaku Salin semua fail ke tomcat, dan masalah akan hilang, saya cadangkan anda cuba menukar perisian pelayan, mungkin ia akan diselesaikan