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

时间:2013-01-04 20:44:52

标签: c# ruby-on-rails

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

这是任务。

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

我会这样做:

  • 从C#app向Rails网站发出POST请求(包含某种密钥或用户名/密码)
  • 网站确保密码正确
  • 向数据库发出一些请求
  • 获取一个对象(模型)和
  • 用字符串回应,可能是这样的:

    @response = ""
    
    if secretkey == '123'
    
    @item = Item.find(1)
    @response = @item.name + "|" + @item.price + ...
    
    end
    

    然后在视图中返回@response或在{#1}}返回C#app。

这是一种聪明的方法吗? 或者有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

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

正确的方法是实施:

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