将数据从Rails 3应用程序传输到C#桌面应用程序

将数据从Rails 3应用程序传输到C#桌面应用程序,c#,ruby-on-rails,C#,Ruby On Rails,这是我认为我知道如何解决的问题之一,但如果我不查一下,我最终会重新发明轮子 这是任务 我有一个C#应用程序,需要每分钟联系我的Rails 3应用程序,从那里获取信息 我想这样做: 从C#应用程序向Rails网站发出POST请求(包含某种密钥或用户名/密码) 网站确保密码正确 向数据库发出一些请求 获取一个对象(模型),然后 用字符串响应,可能类似于以下内容: @response = "" if secretkey == '123' @item = Item.find(1) @respons

这是我认为我知道如何解决的问题之一,但如果我不查一下,我最终会重新发明轮子

这是任务

我有一个C#应用程序,需要每分钟联系我的Rails 3应用程序,从那里获取信息

我想这样做:

  • 从C#应用程序向Rails网站发出POST请求(包含某种密钥或用户名/密码)
  • 网站确保密码正确
  • 向数据库发出一些请求
  • 获取一个对象(模型),然后
  • 用字符串响应,可能类似于以下内容:

    @response = ""
    
    if secretkey == '123'
    
    @item = Item.find(1)
    @response = @item.name + "|" + @item.price + ...
    
    end
    
    然后只需在视图中返回@response或
    render:text
    返回C#app即可

这样做明智吗?
或者有更好的方法吗?

您描述的是在Rails中创建一个服务(使用API)并通过网络客户端访问它

正确的做法是实施:

  • 认证:最好是OAUTH2
  • API:定义您的资源。查看RESTful API,您还可能决定使用RABL gem来描述您的API
  • 实现将数据序列化为可消费数据的控制器。我建议使用JSON或XML,而不是文本