`

ruby on rails 活动通小结

 
阅读更多

用ruby on rails 做活动通有一段时间了,讲一下遇到的问题。

在客户端向服务器端发送数据,并接受返回值

客户端

 

 $scope.upload = function () {
            $http.post('/upload.json', {"user": localStorage.user, "post": Activity.post_message()}).success(function (back) {
                if (back == 'true') {
                    alert("成功")
                }
            })
        }

 服务器端

 

def upload
    Post.post_message(params[:user], params[:post])
    respond_to do |format|
      format.json { render :json => 'true' and return }
    end
  end

 路由

 post "/upload" => "users#upload"

 在实现这一功能的时候遇到了好几个问题,分别有406.422.和500错误

 

用rails s 可以看到数据已经post过去了,但是服务器端接受不了,可能的原因,传过去的格式不对,接收的格式不对。我之前upload没有限定格式,所以穿过去的数据接受不了,加上upload.json才能传过去,还碰到

500错误,经过查google资料原来是,rails的安全验证机制的问题,在users_controller最上面加一句话

 

 protect_from_forgery with: :null_session, if: Proc.new { |c| c.request.format == 'application/json' }

 protect_form_forgrty 是rails的一项功能,防止跨站请求伪造(csrf)攻击。这个功能是所有生成的表单中有一个隐藏的id字段,此id字段必须和存储的id相匹配否则表单提交不会被接收。这样可以防止在插入其他网站或表格形式的恶意XSS。

 

数据可以保存但返回的时候 会报错

 

    respond_to do |format|
      format.json { render :json => 'true'}
    end

 错误提示

AbstractController::DoubleRenderError in UsersController#upload

 解决办法

 

format.json { render :json => 'true' and return } //双倍呈现异常,加上and return 解决

 

 

0
0
分享到:
评论

相关推荐

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    ### Ruby on Rails Guides v2 - Ruby on Rails 4.2.5 #### 一、重要概念及基础假设 - **重要概念**:本指南旨在帮助读者深入理解Ruby on Rails(以下简称Rails)4.2.5版本的核心功能与最佳实践。 - **基础假设**:...

    Ruby On Rails教程

    ### Ruby on Rails 教程知识点概述 #### 一、引言 - **敏捷开发与Rails:** 本书《Ruby on Rails教程》强调了Rails作为敏捷开发框架的优势。它旨在帮助开发者快速构建高质量的Web应用程序。 - **作者团队:** 本书...

    Ruby on Rails 3 Tutorial

    ### Ruby on Rails 3 教程知识点解析 #### 标题与描述中的核心知识点 - **Ruby on Rails 3**:一种流行的Web开发框架,基于Ruby语言。 - **经典教材**:表明本书是学习Ruby on Rails 3的一个权威且广受好评的资源...

    Ruby on Rails 指南 v5.0.1 中文版

    ### Ruby on Rails 指南 v5.0.1 中文版 #### Rails入门 - **前提条件**:为了能够顺利地开始Rails的学习之旅,读者需要具备一定的Ruby语言基础,并且对Web开发有一定的了解。 - **Rails是什么?**:Rails是一种...

    Wrox - Beginning Ruby on Rails

    ### Wrox - Beginning Ruby on Rails 知识点详解 #### 一、书籍基本信息与版权信息 - **书名**:《Beginning Ruby on Rails》 - **作者**:Steven Holzner - **出版社**:Wiley Publishing, Inc. - **出版地**:...

    Ruby On Rails傻瓜书

    ### Ruby on Rails傻瓜书知识点总结 #### 一、书籍基本信息 - **书名**:《Ruby on Rails傻瓜书》(英文原名:*Ruby on Rails For Dummies*) - **作者**:Barry Burd - **出版社**:Wiley Publishing, Inc. - **...

    Ruby on Rails心得

    ### Ruby on Rails心得 #### 一、概述与背景 陈刚撰写的《Ruby on Rails心得_V0.1》是一份非常宝贵的资料,旨在记录作者在学习Ruby on Rails过程中的所见所得,包括读书笔记、心得体会、自创教程及一些常见问题的...

    教学级Ruby On Rails 手动安装.pdf

    ### Ruby on Rails 手动安装知识点详解 #### 核心概念与背景 **Ruby on Rails**,简称**Rails**,是一种使用**Ruby**语言编写的开源全栈Web应用框架,遵循MVC(Model-View-Controller)架构模式,强调代码效率与...

    ruby on rails基础知识

    ### Ruby on Rails基础知识详解 #### 一、Rails简介与安装 **Rails** 是一款流行的开源Web应用框架,基于Ruby语言编写。它强调简洁性、生产力和优雅的设计,非常适合快速开发Web应用。 - **特点** - **DRY (Don'...

    怎样在Ubuntu系统下配置Ruby On Rails开发环境.docx

    Ubuntu 下 Ruby On Rails 开发环境配置指南 在 Linux 操作系统中使用 Ruby On Rails 能够对 web 应用程序的维护和开发变得更加便利,让开发人员能更加专注于系统的逻辑结构。在使用前需先配置 Ruby On Rails 的开发...

    基于Ruby语言的Ruby on Rails项目及其代码方案

    ### 基于Ruby语言的Ruby on Rails项目及其代码方案 #### 一、项目概述 本项目基于Ruby语言,利用Ruby on Rails(简称Rails)框架构建。Ruby on Rails是一款使用Ruby语言开发的应用程序框架,其核心是MVC(Model-...

    Ruby on Rails实例开发

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,同时强调“约定优于配置”的原则。在本实例开发中,我们将探讨如何...

    Ruby+on+Rails快速Web应用开发实战.pdf

    总结以上内容,Ruby on Rails快速Web应用开发实战的文档详细介绍了Ruby编程语言和Rails框架的安装、配置以及使用。它涵盖了从Rails的历史和版本发展到如何在不同操作系统上安装Rails,再到如何使用Rails进行Web应用...

    Ruby on Rails and J2EE

    ### Ruby on Rails与J2EE:两者之间是否有共存的空间? #### 什么是Ruby on Rails? Ruby on Rails(简称Rails)是一种基于Ruby语言构建的相对新兴的Web应用框架。该框架被设计为现有企业级框架的一种替代方案,其...

    Ruby On Rails For Dummies

    ### Ruby on Rails For Dummies #### 核心知识点解析 **1. Ruby on Rails 概述** - **定义与特点**:Ruby on Rails(简称 Rails 或 RoR)是一种基于 Ruby 语言的开源 Web 应用框架,它采用了 Model-View-...

    ruby on rails web敏捷开发第四版(英文)

    ### Ruby on Rails Web 敏捷开发第四版 #### 关于本书的重要信息 《Ruby on Rails Web 敏捷开发第四版》是一本专为希望深入了解 Ruby on Rails 的开发者编写的书籍。该书主要针对 Rails 3 版本进行讲解,因此对于...

    Secrets of ruby on rails

    ### Ruby on Rails:背后的秘密与优势 #### 一、引言 《Ruby on Rails的秘密》是一份关于Ruby on Rails框架的高级介绍资料,由该框架的创始人David Heinemeier Hansson编写。这份资料深入探讨了Rails的核心理念和...

    Ruby on rails blog (博客程序)

    总结一下,这个“Ruby on Rails博客程序”将涵盖以下知识点: 1. Rails的MVC架构及其工作原理。 2. 使用ActiveRecord操作数据库。 3. 创建和管理Rails模型、视图和控制器。 4. URL路由配置。 5. Rails模板语言ERB的...

Global site tag (gtag.js) - Google Analytics