在rails 3应用中,我正在使用第三方API来保存网络摄像头视频。当视频保存到他们的服务器时,他们会给你一个选项,让你回调你指定的网址。从他们的网站:
回调
回调适用于希望在视频在Framey服务器上完成处理时收到通知的高级用户。如果您选择在帐户设置中接收回调,Framey会在转换完成后将视频和缩略图网址发布到您的服务器。
以下是我们发布到您服务器的数据示例:
"video": {
"name": "ecf7c330-549c-012e-9d34-7c6d628c53d4",
"filesize": 123456,
"duration": 15.62,
"state": "uploaded",
"views": 0,
"data": {
"my_user_id": 1,
"video_title": "Contest Submission"
},
"flv_url": "http://framey.com/videos/source/ecf7c330-549c-012e-9d34-7c6d628c53d4.flv",
"mp4_url": "http://framey.com/videos/source/ecf7c330-549c-012e-9d34-7c6d628c53d4.mp4",
"large_thumbnail_url": "http://framey.com/thumbnails/large/ecf7c330-549c-012e-9d34-7c6d628c53d4.jpg",
"medium_thumbnail_url": "http://framey.com/thumbnails/medium/ecf7c330-549c-012e-9d34-7c6d628c53d4.jpg",
"small_thumbnail_url": "http://framey.com/thumbnails/small/ecf7c330-549c-012e-9d34-7c6d628c53d4.jpg"
}
我正在努力理解如何处理这个问题,但我想我可以从你这些好人那里得到正确的指导。他们指定一个POST方法,所以我必须设置一个路由。在我的config / routes.rb文件中我有
post "framey/callback/"
在我的app / controllers / framey_controller.rb文件中有这样的:
class FrameyController < ApplicationController
def callback
end
end
我是否需要做类似
的事情render :json =>????
我熟悉通过HTML表单和/或ajax使用POST。我不知道如何抓住他们寄给我的JSON。
预先感谢您的帮助,如果您需要更多详细信息,请与我们联系。
答案 0 :(得分:2)
在app / controllers / framey_controller.rb
中class FrameyController < ApplicationController
def callback
v = Video.new
v.name = params[:video][:name]
v.user_id = params[:video][:data][:user_id]
v.question_id = params[:video][:data][:question_id]
v.save
end
end