У меня есть приложение spring boot + angularjs, я настроил его для подключения к сокету. это мой контроллер сокета в angularjs:
function SocketController($timeout, localStorageService) {
var vm = this;
var accessToken = localStorageService.get('accessToken');
var stompClient;
// i can see valid value of token in console
console.log(accessToken)
if (accessToken) {
var socket = new SockJS('/looping',
null,
{
transports: ['xhr-streaming'],
headers: {'Authorization': 'Bearer ' + accessToken}
});
stompClient = Stomp.over(socket);
stompClient.connect({"X-Authorization": "Bearer " + accessToken}, function (frame) {
console.log('Connected: ' + frame);
stompClient.subscribe('/topic/loops', function (message) {
console.log(message);
});
});
} else {
console.log("token expired");
}
function sendEvent(loopId, value) {
if (stompClient != null) {
stompClient.send("/topic/loops", {}, JSON.stringify({'loopId': new Date(), 'value': 'hey silver'}));
}
}
function disconnect() {
if (stompClient !== null) {
stompClient.disconnect();
stompClient = null;
}
console.log("Disconnected");
}
}
, проблема в том, что когда я проверяю заголовки запросов в firefox devtools, заголовок авторизации не устанавливается, как вы можете видеть ниже :
![request and response headers](https://i.stack.imgur.com/U2CYe.png)
Как я могу решить эту проблему? Я новичок в socket.
UPDATE
Когда я отредактировал запрос с помощью firefox devtools и установил заголовок Authorization
в заголовках запроса, получил ответ с 200 код состояния, но содержимое ответа в html индекса. html!