如何在没有Rhosync或RhoConnect的情况下使用Rhodes?

我知道我们可以通过使用直接Web服务在没有Rhosync或Rhoconnect的情况下使用rhodes同步数据,但我在这里有点混淆将代码放在webservice调用的位置,以及我们如何初始化它。 有没有人可以帮助我做一些小例子?

提前致谢。

我明白了它对我有用。

class ProductController < Rho::RhoController include BrowserHelper # GET /product def index response = Rho::AsyncHttp.get(:url => "example.com/products.json", :headers => {"Content-Type" => "application/json"}) @result = response["body"] render :back => '/app' end # GET /product/{1} def show id =@params['id'] response = Rho::AsyncHttp.get(:url => "example.com/products/"+ id +".json", :headers => {"Content-Type" => "application/json"}) @result = response["body"] end # GET /product/new def new @product = product.new render :action => :new, :back => url_for(:action => :index) end # GET /product/{1}/edit def edit id =@params['product_id'].to_s response = Rho::AsyncHttp.get(:url => "example.com/products/#{id}.json", :headers => {"Content-Type" => "application/json"}) @result = response["body"] end # POST /product/create def create name = @params['product']['name'] price = @params['product']['price'] body = '{"product" : {"name" : "'+ name +'","price" :"'+ price +'" } }' @result = Rho::AsyncHttp.post(:url => "example.com/products.json", :body => body, :http_command => "POST", :headers => {"Content-Type" => "application/json"}) redirect :action => :index end # POST /product/{1}/update def update name=@params['product']['name'] price=@params['product']['price'] body = '{"product" : {"name" : "' + name + '","price" :"' + price + '" } }' id = @params["product_id"].to_s response = Rho::AsyncHttp.post(:url => "example.com/products/#{id}.json", :body => body, :http_command => "PUT",:headers => {"Content-Type" => "application/json"}) redirect :action => :index end # POST /product/{1}/delete def delete id = @params["product_id"].to_s response = Rho::AsyncHttp.post(:url => "example.com/products/#{id}.json", :http_command => "DELETE", :headers => {"Content-Type" => "application/json"}) redirect :action => :index end end 

最简单的http服务器请求forms是:

 Rho::AsyncHttp.get( :url => "http://www.example.com", :callback => (url_for :action => :httpget_callback) ) 

其中httpget_callback是控制器回调方法的名称。

在Rhodes官方文档中查看更多详细信息。