Ruby Sinatra实现RESTful API的简单示例

作者:佚名 上传时间:2023-12-01 运行软件:Ruby 3.0.0 软件版本:Sinatra 2.1.0 版权申诉

本示例演示如何使用Ruby的Sinatra框架创建一个基本的RESTful API。通过定义路由和处理器,实现对资源的创建、读取、更新和删除操作,展示Sinatra在轻量级Web应用开发中的灵活性。

# 导入Sinatra库
require 'sinatra'

# 存储示例数据的哈希表
books = {
  1 => { title: 'Ruby入门指南', author: 'John Doe' },
  2 => { title: 'Sinatra实战', author: 'Jane Smith' }
}

# 获取所有图书列表
get '/books' do
  books.values.to_json
end

# 获取特定图书信息
get '/books/:id' do |id|
  id = id.to_i
  if books.key?(id)
    books[id].to_json
  else
    status 404
    { error: '图书不存在' }.to_json
  end
end

# 创建新图书
post '/books' do
  request.body.rewind
  new_book = JSON.parse(request.body.read)
  id = books.keys.max + 1
  books[id] = new_book
  { id: id }.to_json
end

# 更新图书信息
put '/books/:id' do |id|
  id = id.to_i
  if books.key?(id)
    request.body.rewind
    updated_book = JSON.parse(request.body.read)
    books[id] = updated_book
    { success: true }.to_json
  else
    status 404
    { error: '图书不存在' }.to_json
  end
end

# 删除图书
delete '/books/:id' do |id|
  id = id.to_i
  if books.key?(id)
    books.delete(id)
    { success: true }.to_json
  else
    status 404
    { error: '图书不存在' }.to_json
  end
end

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
Ruby SinatraRESTful API
本示例演示如何使用Ruby的Sinatra框架创建一个基本的RESTful API。通过定义路由和处理器,实现对资源的创建、读取、更新和删除操作,展示Sinatra在轻量级Web应用开发中的灵活性。
Sinatra 2.1.0
Ruby 3.0.0
2023-12-01 06:35
Ruby SinatraRESTful API
本示例展示了如何使用Ruby Sinatra框架来实现一个简单的RESTful API,包括GET、POST、PUT和DELETE操作,并演示了如何使用JSON格式来进行数据交互。require '
Sinatra 2.1.0
Ruby
2023-03-23 01:30
Ruby SinatraRESTful API
本文将提供一个使用Ruby Sinatra实现的RESTful API示例代码,同时也会进行代码释义和总结。Sinatra编写的REST API代码require 'sinatra'requir
Ruby 2.7.1, Sinatra 2.0.0
RubyMine
2023-03-21 07:52
使用Ruby Sinatra创建RESTful API
本示例演示了如何使用Ruby的Sinatra框架创建一个简单的RESTful API。通过Sinatra,您可以快速构建轻量级的Web应用程序和API。这个示例将展示如何设置路由、处理HTTP请求、以
Sinatra 2.1.0
Ruby 2.7.2
2023-12-13 23:18
使用Ruby SinatraRESTful API
本示例演示了如何使用Ruby Sinatra框架实现RESTful API,并支持GET、POST、PUT和DELETE请求,使用JSON格式作为数据传输方式。require 'sinatra'r
Ruby 2.6.6,Sinatra 2.0.8
Ruby,Sinatra
2023-04-04 21:06
使用SinatraRubyRESTful API
本示例展示如何使用Sinatra框架,通过Ruby语言实现简单RESTful API。RESTful API是一种基于HTTP协议的Web API,包含对资源的CRUD操作。require 'sin
Sinatra 2.1.0
Ruby
2023-04-28 17:24
Ruby SinatraAPI
示例代码下面是一个简单的Ruby Sinatra API示例代码:require 'sinatra'get '/' do 'Hello, world!'endget '/users/
Ruby Sinatra 2.2.2
Ruby Sinatra
2023-04-14 05:54
Ruby SinatraRESTful API与解析
此示例展示了如何使用Ruby编程语言和Sinatra框架创建一个简单的RESTful API。它包括路由设置、HTTP请求处理、以及对GET、POST、PUT和DELETE请求的响应。require
Ruby 2.7+, Sinatra 2.1+
VS Code, RubyMine等
2023-11-09 01:22
Ruby SinatraRESTful API
使用Ruby Sinatra框架,利用HTTP请求实现RESTful API。require 'sinatra'require 'json'users = []# 获取用户列表get '
Ruby 2.7.1, Sinatra 2.1.0
Sinatra
2023-03-22 00:11
Ruby SinatraREST API
这是一个基于Ruby Sinatra框架的简单REST API的示例代码,包括GET、POST、PUT和DELETE请求。通过简单的路由映射,可以实现对用户列表的增删改查操作。require 'si
Sinatra 2.1.0
Ruby
2023-03-26 18:17