首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >与Rails一起打开OpenURI::open无法从本地主机加载JSON

与Rails一起打开OpenURI::open无法从本地主机加载JSON
EN

Stack Overflow用户
提问于 2015-01-06 23:36:23
回答 1查看 516关注 0票数 0

我有这样明显的控制器代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
require "json"
require "open-uri"

class FoobarController < ApplicationController
    def get
        render json: { foo: 1, bar: 2 }
    end

    def output
        data = open("http://localhost:3000/foobar/get").read
        puts(JSON.parse(data))
    end
end

一个控制器的操作返回JSON,另一个操作下载并输出它。

但是这段代码不能正常工作: Foobar#get返回JSON,但返回open(...)无法加载JSON (服务器没有响应)。

但是,尽管如此,当我尝试以这种方式加载和解析JSON时,它可以正常工作。当我尝试在Foobar#output中从外部服务器加载JSON时,它也能正常工作。

但是所有这些-- Rails、OpenURI和本地主机--都破坏了我的代码。为什么?

EN

回答 1

Stack Overflow用户

发布于 2015-01-06 23:42:26

Webrick (你在开发环境中使用的web服务器)是用纯ruby编写的,一次只能处理一个请求。正因为如此,你的请求(来自控制器)等待当前的请求完成。

这会产生死锁,并且由于您的请求挂起,您当然不会在其他服务器/源上遇到这些问题。

解决方案

Webrick的替代方案是thin,它可以运行并发请求,有关更多信息和用法,请查看GitHub上的自述文件。

多么

将thin添加到Gemfile中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gem 'thin'

启动服务器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bundle exec thin start --threaded 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27809141

复制
相关文章
ArcMap卡在加载界面、无法打开的解决方法
  最近,突然发现ArcMap软件打不开了,每次双击快捷方式后其会显示如下所示的加载界面,但是等待很久后加载界面消失,软件窗口却一直不弹出来。
疯狂学习GIS
2022/12/18
2.2K0
ArcMap卡在加载界面、无法打开的解决方法
多用户登录Windows主机时无法打开浏览器
https://jingyan.baidu.com/article/574c52197854bf6c8d9dc107.html
Windows技术交流
2021/07/22
2.8K0
open函数打开文件方式
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141085.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/24
5410
linux下安装git提示”无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)“
如图所示,输入命令:apt-get install git后提示权限不够 解决方法,在命令前加 sudo即可 sudo apt-get install git  sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。sudo不是对shell的一个代替,它是面向每个命令的。
10JQKA
2018/05/09
5.7K0
linux下安装git提示”无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够)“
SaveFileDialog无法打开
当前画面是报表画面,没用线程。主画面点击按钮,打开该画面,是在子线程中打开的,所以SaveFileDialog也无法直接打开
全栈程序员站长
2022/11/10
1.9K0
matlab中importdata无法打开文件_importdata无法打开文件
最近使用importdata函数不能读取全部数据,数据集315行,但是读取了197行,那就是197-198之间有问题,百度之后有了思路。由于没有找到具体的证据,所以这里说一下解决思路。
全栈程序员站长
2022/11/16
6.2K0
matlab中importdata无法打开文件_importdata无法打开文件
无法从/var/lib/rpm打开软件包数据库
centos使用rpm命令安装epel*遇到问题 安装epel*报错 错误:rpmdb: BDB0113 Thread/process 27383/140189131929664 failed: BDB1507 Thread died in Berkeley DB library 错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery 错误:无法使用 db5 - (-30
薛定喵君
2019/11/06
3.7K0
js读取本地json文件_jquery读取本地json文件
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
21.6K0
js读取本地json文件_jquery读取本地json文件
js读取本地json_vue读取本地json文件
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
13.2K0
Rails 从入门到完全放弃
这是一篇关于Rails的开发经历的文章,旨在将Rails中遇到的各种问题分享给还未接触Rails或是已经上路的朋友。虽说做Rails的开发时间不长,刚好一年多。但是,在这一年的时间中,该使用的技术架构,Ruby-China 推荐的Gem包,都尝试过使用过了,也为业务开发了一些Gem包。谈不上精通Rails,如果把Rails作者定为最高等级,他是F1赛车手,我该是个跑出租的老司机。
零式的天空
2022/03/22
2.2K0
电脑无法打开github
配置了一台新电脑,输入github地址 一直在加载无法打开,确认了不是自己的网络差 解决办法:
河湾欢儿
2020/03/20
4.2K0
如何使用Bore与本地主机建立通信隧道
Bore是一款功能强大的现代化命令行CLI工具,在该工具的帮助下,广大研究人员可以轻松与本地主机localhost建立通信隧道。Bore基于Rust开发,可以将本地端口暴露给远程服务器,并能够绕过标准NAT连接防火墙。
FB客服
2022/06/08
2K0
如何使用Bore与本地主机建立通信隧道
Nextcloud应用页面空白加载不出来、Nextcloud应用商店无法打开
‘appstoreenabled’ => true, ‘appstoreurl’ => ‘https://www.orcy.net/ncapps/v1/’,
寒龙亦
2021/09/15
3.3K0
Rails 容器与配置(5)
尝试添加一篇新文章,点击连接 [New article] ,弹出对话框,提示输入密码
franket
2021/10/20
4170
Rails 容器与配置(2)
不得不说,还是有点大的 833.7 MB,相较而言一个完整的rails应用代码才区区几兆
franket
2021/10/20
3830
译 | 将数据从Cosmos DB迁移到本地JSON文件
有一项重复的任务是将数据从一种数据库格式迁移到另一种数据库格式。我最近使用Cosmos DB作为数据库来存储Ignite大会发出的所有推文。然而一旦获得了数据并且不再使用Cosmos DB进行该操作,我就需要将数据转储到本地文件中保存并节省开销。本文介绍我的方法。
Edi Wang
2020/11/03
3.2K0
译 | 将数据从Cosmos DB迁移到本地JSON文件
JSON-Server启动本地JSON服务
作为一个前端开发工程师,在后端还没有给我们接口的时候,我们大多数情况都是写一些死数据来作为占位,但这样我们无法测试是否真的能调用数据,我们可以利用json-server起一个本地的服务,到时候后端给我们接口的时候,我们在把API换成后端给我们的接口。我们只需要提供一个json文件,填充一些数据就可以模拟出RESTful API的接口
大熊G
2022/11/14
1.5K0
JSON-Server启动本地JSON服务
利用特殊协议加载本地文件, 绕过 HTML5 沙箱, 打开弹窗诸事
原文链接:https://www.brokenbrowser.com/abusing-of-protocols/ 原作者:Manuel Caballero 译:Holic (知道创宇404安全实验室) 在 10 月 25 日,研究员 @MSEdgeDev twitter 了一个链接,成功引起了我的注意,因为我点击那个链接的时候(在 Chrome 上),Windows 应用商店会自动打开。这对你来说也许不足为奇,但它足以让我感到惊讶。 在我印象中,Chrome 有这样一个健康的习惯,在打开外部程序之前询问用户
Seebug漏洞平台
2018/03/30
2.5K0
Rails存储库从SVN转向Git
在Ruby on Rails 2.1版本发布的前夕,Rails开发团队也准备将代码的存储库从Subversion迁移到Git之上。在Ruby on Rails的官方博客里,DHH写到: 我们准备将Rails开发的代码存储库从Subversion迁移到Git之上,迁移过程将会在近期内完成。并且会使用Github来帮助开发者进行协作。在版本存储库迁移的同时,我们也会将问题跟踪系统转移到基于Rails开发的Lighthouse应用之上,于是到目前为止,我们的存储库和问题跟踪系统都是使用的Rails应用,这对我们
用户1172164
2018/01/16
1.4K0
点击加载更多

相似问题

从本地主机加载json

14

如何从本地open主机上的open链接在本地软件中打开本地文件

12

Rails和OpenURI

20

与Kate一起从远程主机打开文件

20

无法从本地HTML文件打开本地JSON文件

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文