写点什么

REST changes in Rails Edge and RADAR

  • 2007-04-03
  • 本文字数:1034 字

    阅读完需:约 3 分钟

The development version of Ruby on Rails, Rails Edge, was updated with a change to the code that handles REST URLs. From the commit message for this change:"

Dropped the use of ; as a separator of non-crud actions on resources and went back to the vanilla slash. It was a neat idea, but lots of the non-crud actions turned out not to be RPC (as the ; was primarily intended to discourage), but legitimate sub-resources, like /parties/recent, which didn’t deserve the uglification of /parties;recent. Further more, the semicolon caused issues with caching and HTTP authentication in Safari. Just Not Worth It [DHH]"

Ryan Daigle gives a succinct overview of what this means:

Whenever you have a custom action route defined in Rails: map.resources :users, :collection => { :filter => :get } the resulting route no longer uses a semi-colon (;) to delimit the custom action: GET /users;filter and instead will use your standard forward-slash (/): GET /users/filter

Dave Thomas (PragDave) also reported these news and offered a thorough explanation of the reasons that made the semicolons seem necessary in the first place. After detailing that it’s only Web Browsers that require hacks like this, he ponders a solution for the problem:

Put the main application logic into a RESTful server. This is where all the CRUD-style access to resources takes place. Then, write a second proxy server. This is an HTTP filter, sitting between dumb browsers and your core resources. When browser-based users need to interact with your resources, they actually connect to this proxy. It then talks REST to your main server, and interprets the RESTful responses back into a form that’s useful on the browser. And this filter doesn’t have to be a dumb presentation layer - there’s nothing to say that it can’t handle additional functionality as well. Things like menus, user preferences, and so on could all sit here.

Since he likens Web Browsers to old 3270 terminals, also referred to as dumb clients, he names this idea “RADAR”: RESTful Application talking to Dumb-Ass Recipients.

2007-04-03 18:22651
用户头像

发布了 117 篇内容, 共 15.7 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

华为云专家出品《从零到一•Python图像处理入门》电子书

华为云PaaS服务小智

Python 华为 华为云 华为开发者大会2023

Spring Boot配置文件加载顺序详解

2756

Intellij IDEA 插件开发 | 京东云技术团队

京东科技开发者

Java IntelliJ IDEA 企业号 6 月 PK 榜 插件工程

推荐几款可以大幅提高开发效率的vscode插件 | 京东云技术团队

京东科技开发者

Vue 前端 vscode

低代码渲染那些事

阿里技术

低代码 渲染

【直播预告】HarmonyOS极客松赋能直播第三期:一次开发多端部署与ArkTS卡片开发

HarmonyOS开发者

HarmonyOS

快上车,搭乘HUAWEI HiCar驶向未来

HarmonyOS SDK

HMS Core

2023银川市等级保护测评中心地址在哪里?有几家?

行云管家

等保 等保测评 等级测评 银川

IPQ9574-Four M.2 Connectors Platform|Wallys Industrial WIFI7 Solution

wallyslilly

WiFi7 ipq9574

行业首个多重节律照明!三翼鸟“亮”在哪?

脑极体

智能照明

图文结合带你搞懂GreatSQL体系架构

GreatSQL

greatsql greatsql社区

程序员用哪一种IDE写代码比较好?

没有用户名丶

【网络安全】堡垒机对于企业的重要性你知道吗?

行云管家

云计算 运维 网络安全 堡垒机

mysql

ltc

MySQL

用华为云低代码Astro Zero10分钟搭建 “图书馆数据可视化大屏” 应用

华为云PaaS服务小智

软件开发 低代码 华为云

从Kafka中学习高性能系统如何设计 | 京东云技术团队

京东科技开发者

云计算 kafka 高性能 企业号 6 月 PK 榜

融云出海:TikTok 百亿美元投向东南亚,巨头将如何影响市场格局

融云 RongCloud

产品 运维 出海 市场 通讯

Redis跳跃表是如何添加元素的?

小小怪下士

Java redis 面试

HTML5 游戏开发实战 | 黑白棋

TiAmo

html html5 6 月 优质更文活动

直播系统源码知识分享:解你忧愁!降低直播延迟的实现

山东布谷科技

软件开发 源码搭建 直播系统源码 直播源码

软件测试/测试开发丨Python内置库学习笔记

测试人

Python 软件测试 io 科学计算 内置库

G1垃圾回收参数调优及MySQL虚引用造成GC时间过长分析 | 京东云技术团队

京东科技开发者

MySQL G1 GC 企业号 6 月 PK 榜

大语言模型的开发利器langchain

程序那些事

程序那些事 AIGC ChatGPT 大语言模型

MaxCompute湖仓一体近实时增量处理技术架构揭秘

阿里云大数据AI技术

sql 大数据 分布式计算 数据处理 企业号 6 月 PK 榜

构建系列之新一代利器Esbuild(下)

江湖修行

前端 cli 构建 #web esbuild

VLDB2023|方略:一个交互式的规则研发系统

AI Infra

程序员 AI 开发者 AI大模型 大模型时代

安全专家们看过来,易安联EnSRC第二期众测启动

权说安全

一文搞定PCB元器件的布局布线

华秋PCB

元器件 PCB 布局 PCB设计 布线

schema registry口令认证配置

Shen-Xmas

kafka Bigdata dba schema schema registry

英特尔宣布极光超级计算机安装完成,将于2023年末正式上线!

E科讯

AIGC+任务管理|给既定目标一个“精准打击”

TE智库

人工智能 任务管理 AIGC 生成式AI

REST changes in Rails Edge and RADAR_Ruby_Werner Schuster_InfoQ精选文章