我有一个在端口64999上运行的应用程序, 它正在向另一个运行在不同端口65420上的应用程序发出信号调用
在启动具有端口65420的应用程序时,我有代码:
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.Map("/signalR", map =>
{
map.UseCors(CorsOptions.AllowAll);
var hubConfiguration = new HubConfiguration
{
EnableJSONP = true,
EnableDetailedErrors=true
};
map.RunSignalR(hubConfiguration);
});
}
}
从应用程序64999我尝试连接到另一个应用程序,如:
var connection =$.hubConnection('http://localhost:65420/signalR/hubs');
var chatHubProxy = connection.createHubProxy('chatHub');
chatHubProxy.on('getDetails', function (message) {
$("#Message").html(message);
});
connection.start().done(function () {
chatHubProxy.invoke('sendMessage', "Hello");
});
我无法理解如何打电话。
答案 0 :(得分:0)
我真的在互联网上搜索,并在https://cmatskas.com/signalr-cross-domain-with-cors/找到答案。
我现在所做的是在应用程序64999中更改了集线器的位置
<script src="http://localhost:65420/signalr/hubs"></script>
我的javascript代码就像:
$.connection.hub.url = 'http://localhost:65420/signalr';
var chat= $.connection.chatHub;
chat.client.getDetails = function (car, speed, overSpeed) {
$("#Message").html(message);
};
$.connection.hub.start().done(function () {
chat.server.sendMessage("Hello World");
});