繁体   English   中英

从Flex应用程序向Ruby on Rails后端发送发布请求时出现问题

[英]Problem sending post request from Flex app to Ruby on Rails back end

我无法让我的flex应用程序向我的Rails应用程序发送POST请求。 似乎总是发送GET。

这是我的服务声明:

<mx:HTTPService id="add_email_service" showBusyCursor="true" result="parseJoinResult();" fault="onJoinFault(event)" useProxy="false" />

在我的应用程序初始化函数中,将方法设置为POST:

add_email_service.url = join_url;
add_email_service.method = "POST";

但是,当我发送请求时,我的Rails应用仍然将请求视为发布请求。 我知道这是因为,如果我要求在我的route.rb文件中将请求设为POST:

# RESTful API for joining a mailing list
  map.connect 'mailing_lists/join/:id', 
      :controller => 'mailing_lists', 
      :action => 'join', 
      :conditions => { :method => :post}

请求失败,我可以在开发日志中看到:

“正在处理ApplicationController#index(对于2009年7月23日14:25:35的127.0.0.1)[GET],ActionController :: MethodNotAllowed(仅允许发布请求。):”

有人知道为什么会这样吗?

如果没有发送任何变量,则较旧版本的Flash Player(在某些浏览器中)会自动将您的请求从POST切换为GET。

尝试将参数添加到您的请求中,看看是否可以解决该问题。

将Flash Player与Restful Rails集成?

也为其他一些问题做好准备:

  1. Flash Player只能接受HTTP状态代码200,其他所有内容均会引发异常,并阻止您获取消息正文。
  2. 您无法发送PUTS或DELETE HTTP方法

我相信实际上只有200个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM