0

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

这是任务。

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

我会这样做:

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

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

    然后在视图中返回 @response 或render :text返回 C# 应用程序。

这是一个聪明的方法吗?或者,还有更好的方法?

4

1 回答 1

0

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

正确的方法是实施:

  • 认证:最好是OAUTH2
  • API:定义您的资源。查看 RESTful API,您也可以决定使用 RABL gem 来描述您的 API
  • 实现控制器,将您的数据序列化为可消耗的东西。我建议使用 JSON 或 XML,而不是 TEXT。
于 2013-01-04T20:49:04.017 回答