Вызов метода Rails из программы C ++ - PullRequest
1 голос
/ 07 июля 2011

У меня довольно странный вопрос о связи между C ++ и Ruby on Rails.Я пытаюсь обновить представления на моем сервере Rails всякий раз, когда в моей программе на C ++ происходят определенные события, которые происходят на одной машине.Можно ли вызвать метод в контроллере на сервере RoR из программы на C ++?И если да, то как?

Ответы [ 2 ]

0 голосов
/ 07 июля 2011

Вы можете заставить приложение Rails предоставлять свои методы контроллера через XML-RPC - для этого есть библиотека . Затем просто используйте библиотеку C ++ XML-RPC для вызова.

0 голосов
/ 07 июля 2011
  • Если эти обновления являются высокочастотными, рассмотрите возможность обхода рельсов и непосредственного обновления базы данных из приложения C ++.
  • Если обновления происходят не часто, вы можете рассмотреть возможность использования библиотеки C HTTP, такой как curl, для запуска обновлений приложения rails через стек HTTP; вы можете ограничить доступ к этим методам контроллера обновлений.
  • Если обновления встречаются нечасто, может оказаться достаточным решением выложить запуск грабли из вашего приложения C ++.

Хотя технически возможно вызвать ruby ​​из C ++ с помощью чего-то вроде SWIG , это все равно похоже на громоздкое решение, которое может быть сложно поддерживать и отлаживать.

...