?
Solved

Rails and Flash Filereference - receiving HTTP 422

Posted on 2009-05-06
17
Medium Priority
?
804 Views
Last Modified: 2013-11-13
Trying create a multiple file uploader in flash using RoR. I'm using AS3 scripts I use to send to PHP. Modified it a bit, and created some rails script like below...

My thoughts: It may be the auth token I need to validate, but I tried passing that in POST and no luck.

Anyone know simply how to upload files from Flash Actionscript to Ruby on Rails???
class DataFile < ActiveRecord::Base
 
  def self.save(data, name, directory)
  		path = File.join(directory, name)
  		File.open(path, 'wb') do |file|
  			file.puts data.read
		  end
		  #File.open(path, "wb") { |f| f.write(params[:filedata].read) }
  end
end
 
class UploadController < ApplicationController
	def index	
		data = params[:filedata]
		name = params[:Filename]
		
		directory = "public/data"
		
		@data_file = DataFile.save(data, name, directory)
 
		render :nothing => true
	end
end

Open in new window

0
Comment
Question by:bizzark
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 7
17 Comments
 

Author Comment

by:bizzark
ID: 24358686
...anyone?   Or anyone know how to pass vars from Flash to a Ruby object in Ruby 2.0? I guess I'll try that next..
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24412798

I am not too sure about the RoR part, but here is an article on how to send it to a PHP script...

http://scoopmedia.be/uploading-files-using-actionscript-30-and-php


I assume, this would be the same with any server-side environment...



rp / ZA
0
 

Author Comment

by:bizzark
ID: 24414585
Yeah thanks.. doesn't do me much good. I've been working with PHP for a while, I'm trying to switch to Rails.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 22

Expert Comment

by:rascalpants
ID: 24414689

"Anyone know simply how to upload files from Flash Actionscript to Ruby on Rails???"


I gave you the flash part, because that is my responsibility...  if you need help only with the Rails code, and your actionscript is working perfectly, then I would have a Mod post this question in the proper area...


And since your question was worded in a way that make it sound like you believe you can use Flash to do system uploads, I wanted to give you that information...  


rp / ZA
0
 

Author Comment

by:bizzark
ID: 24414881
I had the AS part, like I said above.. I've been using a Flash upload I made for PHP for a while, but I just need help sending it to Rails.
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24414956

the question was just added to the wrong area then...  if you want, I can have it removed from the AS area.

rp / ZA
0
 

Author Comment

by:bizzark
ID: 24414999
Sure if you think so. But it is an AS question also. I want to know specifically what is needed to communicate with Ruby in AS (if there is anything different)..
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24415070

I believe I said it above... you communicate with all server-side code the same way...  it is the method that might change...

like Flash Remoting VS Web Services VS sending a QueryString.  it is all the same, and if it is working for PHP, then it is most likely your RoR code that is the issue.

Also, since you have not posted any Actionscript, there there is no way for a Flash person to help you with the Flash part  :)


rp / ZA

0
 

Author Comment

by:bizzark
ID: 24415082
Alright.. well another thing was I wasn't sure if I needed to pass Auth codes from Rails into flash for it to work too.
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24415154

Since I have never worked with RoR, I don't know the specifics to what is needed as a call...

if you are needing to pass parameters in your call to the server, then that is simple enough...


what version of AS are you using?   post your code that does this part...


rp / ZA
0
 

Accepted Solution

by:
bizzark earned 0 total points
ID: 24418392
Hey, I figured it out! Kept messing with it. I turned off the authenticity token using:

skip_before_filter :verify_authenticity_token, :only => 'upload_action'

Then I looked in the Shell while I performed actions through html (which I got working), and Flash and saw that the variables had different names, so I had to change that

=)

0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24421871
so there was nothing in the Flash that needed updating?


rp / ZA
0
 

Author Comment

by:bizzark
ID: 24424167
No, but I needed to know what Flash sends its file vars as.. it kinda was, but yeah not really.
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24424217
lol...  then I guess that should have been your question...  and I would have said, that depends on what method you use to connect to the server  ;)


rp / ZA

0
 

Author Comment

by:bizzark
ID: 24434880
Thanks. my question for the most part is answered. The only dilemma I'm facing now is how to actually use the authenticity_code and pass it to Rails. I can receive it in Flash, but I'm not able to get rails to accept it.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
The purpose of this article is to demonstrate how we can use conditional statements using Python.
This video teaches viewers about errors in exception handling.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
Suggested Courses

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question