Вызов метода SignalR / Ajax - PullRequest
       12

Вызов метода SignalR / Ajax

0 голосов
/ 05 сентября 2018

В настоящее время я перевожу существующее решение в SignalR (для обновления в режиме реального времени). Унаследованная сторона сервера была ASP.NET MVC и теперь является приложением WPF. Самостоятельно размещает SignalR. Я хочу, чтобы мое решение было как можно более обратно совместимым для клиента, но весь существующий код на стороне клиента использует синтаксис Ajax 'post / get' для вызова таких методов сервера:

 $.ajax({
          url: 'api/Controller/Action',
          type: "POST",
          success: function (result) { ...   },
  });

Можно ли каким-либо образом перехватить эти вызовы методов с точки зрения SignalR, не добавляя хаб-соединение и / или не изменяя код на стороне клиента?

1 Ответ

0 голосов
/ 06 сентября 2018

После некоторого обходного пути я нашел решение, поэтому выкладываю его здесь, если ищу решение той же проблемы.

Можно использовать как SignalR SelfHost , так и WebApi SelfHost

в классе Startup.Cs в моем wpf-приложении я просто отложил дополнительную конфигурацию HttpConfiguration в сторону SignalR.

    public void Configuration(IAppBuilder app)
    {
        HttpConfiguration config = new HttpConfiguration();
        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{action}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
        // SignalR configuration etc...

    }

Затем я создал собственный класс, производный от ApiController, и использовал его как стандартный контроллер MVC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...