问题标签 [goliath]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - env['REMOTE_ADDR'] 与 Goliath ruby
我有一个带有 Goliath gem (ruby) 的 API,我想获取调用我的 API 的移动设备的 ip。情况是,当某些设备呼叫我时,env['REMOTE_ADDR']
请始终给我。127.0.0.1
应该是手机的ip给我打电话吧?
请问有什么帮助吗?
提前致谢!
ruby - 如何在 Goliath 中获取 Goliath::Runner 实例端口?
我试图在 Goliath 的请求控制器之外获取服务器的端口,这意味着我无法访问env['SERVER_PORT']
.
所以我试图解析ARGV
,结果它是空的
我发现有一个port
属性Goliath::Runner
,但是如何在 Goliath 中引用当前的 runner 实例?
ruby-on-rails - 访问不同模块中的 Rails 模型
我正在使用 Goliath 为我的 Rails 应用程序编写 Web 服务,我想记录发送到我的 Web 服务器的所有请求。我有这个Api
类,它位于两个模块中:
我有一个app/models
名为的模型Logger
。问题是当我运行ruby api.rb -sv
它时会引发错误:
我应该怎么办?谢谢。
ruby - 消除葡萄/歌利亚中的错误
我正在使用在 Goliath 上运行的 Grape API。目前,如果一个方法由于某种原因返回一个错误,客户端会收到一个 500 -并引发了确切的错误!
如何使 API 的输出静音并让它返回一个通用的 500 错误?
ruby - 如何在没有 Rails 的情况下实现强大的参数保护?
我正在使用Goliath + Grape + Active Record 4.2 + Active Record Migrations开发样板 Web 应用程序。这是我的迁移文件
还有我的模特
还有葡萄 API
当我POST /v1/albums/
使用一些参数调用时,应用程序总是会引发ActiveModel::ForbiddenAttributesError
. 似乎 ActiveRecord 想ActionController::Parameters
成为论据,但 Grape 给出了它Hashie::Mash
。
我已经尝试实现一个简单的 Rack 中间件来env['params']
从 a转换Hash
为 aActionController::Parameters
并在之后使用它Goliath::Rack::Params
,但是 Grape 只是在调用辅助方法时对其进行清理params
。我还尝试实现和使用 Grape 中间件来做同样的事情并得到相同的结果。
是否有任何解决方案,或者我只需要降级到 ActiveRecord 3?
ruby - 需要葡萄极大地减慢了歌利亚的速度
我已经使用 编写了一个“Hello World”应用程序Goliath
,我决定安装Grape
在它上面:
我对其进行了基准测试:
它表明每秒可以处理大约 250 个请求。但是当我注释掉这行时require 'grape'
,这个值突然增加到了 700 左右。有人可以回答为什么简单require
可以带来如此巨大的差异吗?
PS我使用MRI 2.2.2
ruby - 歌利亚表现不佳:响应时间短,等待时间长
所以我用Goliath开发了一个api,/list/users
很简单,查询mysql然后返回。
请求本身需要Response Time: 53.84ms
,但如果我用 10 个线程进行压力测试来请求服务器ab
,我只能得到 20 个请求/秒。
同时,我在 Chrome 中访问请求,我看到了wait time: 400ms
怎么了?我该如何改进它?
我还创建了一个 nodejs 版本/list/users
。请求本身也需要大约 50ms,但我在测试时可以得到 130 个请求/秒,等待时间几乎是 10ms。
我是不是做错了什么,Goliath 需要做任何设置吗?
而且我还想知道为什么nodejs可以有更多的请求/秒,因为单个请求响应时间是相同的?
ruby - Ruby Goliath 应用程序实际上是如何启动的?
这是歌利亚的一个例子:
定义类和子类化如何Goliath::API
导致 Web 服务器启动?这不应该只是定义一个类,而不是实际实例化和执行一个吗?
ruby - Openshift 上的歌利亚
尝试使用以下 config.ru 在 Openshift 上部署 Goliath 应用程序
在我的测试平台环境中本地应用程序运行顺利,但在 Openshift 上返回以下权限错误。
有人在 Openshift 上运行 goliath 吗?
谢谢,