Я пытаюсь подключиться к своей веб-розетке из другого домена. Сервер находится на локальном хосте: 8098, а клиент на локальном хосте: 8080. Каждый раз, когда я пытаюсь подключиться, я получаю ошибку «Access-Control-Allow-Origin», я также добавляю .setAllowedOrigins("*")
.
Не уверен, что не хватает.
Сервер
@Configuration
@EnableWebSocketMessageBroker
public class webSocketObjects implements WebSocketMessageBrokerConfigurer {
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
config.enableSimpleBroker("/topic");
config.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws/Object").setAllowedOrigins("*").withSockJS();
}
Клиент
<script>
let stompClient=null;
import Stomp from 'stompjs';
import SockJS from 'sockjs-client'
export default {
name: "modal",
props: ['node'],
data() {
return{
bacnetObject: '',
status: "disconnected"
}
},
mounted() {
this.bacnetObject = this.node;
},
methods: {
connect: function(){
const socket = new SockJS('http://localhost:8098/ws/Object');
stompClient = Stomp.over(socket);
stompClient.connect({
}, function (frame) {
console.log('Connected: ' + frame);
stompClient.subscribe('/topic/user', console.log(String.body))
})
},
disconnect: function () {
stompClient.disconnect();
}
}
}
</script>
Ошибка, которую я получаю:
Доступ к XMLHttpRequest по адресу http://localhost:8098/ws/Object/info?t=1571728150435' от источникаhttp://localhost:8080' заблокировано политикой CORS: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».