从C ++程序调用Rails方法

时间:2011-07-07 04:04:11

标签: c++ ruby-on-rails communication

我对C ++上的Ruby on Rails通信有一个相当奇怪的问题。我正在尝试在我的C ++程序中发生某些事件时更新我的​​Rails服务器中的视图,这两个事件都在同一台机器上。是否可以从C ++程序调用RoR服务器上的控制器中的方法?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:0)

  • 如果这些更新是高频的,请考虑绕过rails并直接从C ++应用程序更新数据库。
  • 如果更新很少,您可以考虑使用像curl这样的C HTTP库来通过HTTP堆栈触发对rails应用程序的更新;您可能希望限制对这些更新控制器方法的访问。
  • 如果更新非常罕见,那么它可能只是一个足够的解决方案,可以从C ++应用程序中运行rake任务。

虽然技术上可以通过类似SWIG之类的东西从C ++调用ruby,但它确实感觉很麻烦,可能很难维护和调试。

答案 1 :(得分:0)

你可以让Rails应用程序通过XML-RPC公开它的控制器方法 - 只有library才能做到这一点。然后只需使用C ++ XML-RPC库来调用它。