问题标签 [grape-api]

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.

0 投票
1 回答
2263 浏览

ruby-on-rails - 如何让 Grape 以 CSV 格式返回错误消息?

我有一个 Rails 应用程序,我已经使用Grape gem 实现了 api。现在,我创建了一个自定义错误格式化程序 (CSVFormatter) 以 CSV 格式返回错误响应。

而且,我的应用程序的 v2.rb 文件中也有这个:

当我点击这样的网址时:

http://example.com/api/v2/datasets/CODE/data.csv?&trim_start=06/01/99&trim_end=2014-05/28&sort_order=desc

它在控制台中显示这样的错误,这很好,意味着我的自定义错误格式化程序工作正常:

但是,我只需要在 csv 文件中下载此错误消息。在查看了 Grape 的文档后,我找到了一种设置 Content-type 的方法,我尝试了这个:

但是,这并没有像我预期的那样工作。

编辑:

根据西蒙的回答,如果不强制覆盖状态码,似乎没有使用葡萄的干净方法。但是,人们可能不希望这样做,因为它可能会导致应用程序中出现其他问题,例如,如果某些其他程序试图从 api 读取数据并得到不正确的响应,甚至不知道为什么。

0 投票
1 回答
85 浏览

ruby-on-rails - Where do rack application output goes?

I have a rack application running in the following way:

and it runs with puma like this:

My app is some kind of a simple API written with ruby's grape rest api. my question is, where do all the application output goes ? I mean, all the GET requests for example, i am pretty new to this, and was not able to find it.

0 投票
1 回答
1472 浏览

grape-api - 在 Grape API 中检查请求正文

我在 Grape 端点中有这样一行来检查 POST 正文的内容,以提供测试端点:

在我笔记本电脑上的开发环境中,这工作得很好。但是,在我们的暂存和生产环境中,它会引发异常:

据我所知,这与 Rack 有关,但我很惊讶地发现两个环境之间的中间件行为不同。我想知道那里是否有人遇到过这个问题并且可能有一个建议,因为我看到 Unicorn::TeeInput 似乎没有一种简单的方法来检查内容。我希望也许有一种“官方”方式可以直接访问 Grape 中的请求正文,但我还没有找到。

感谢您的任何想法。

0 投票
0 回答
245 浏览

android - 使用 Ruby on Rails Devise 在移动设备上进行初始身份验证

我正在尝试编写一个可以grape在 Ruby on Rails 中访问 REST API 的移动应用程序(Android 和 iOS)。

devise我有一个从gem构建的用户表,其中已经在用户表中配置了身份验证令牌。

我的问题是,为了让我将此身份验证令牌提供给用户,他们必须第一次使用该应用程序发送密码和电子邮件。但这并不安全,因为我无法加密密码。

那么如何在不影响用户初始登录期间的安全的情况下将密码传递给 REST API?

0 投票
1 回答
999 浏览

ruby-on-rails-3 - 如何使用葡萄在单个请求中传递查询参数和标头

如何使用葡萄在单个请求中传递查询参数和标头

如何使用发布和查询字符串参数。他们之间有什么区别。我正在使用葡萄restful-api。葡萄

HTTP 方法:POST

标题:

钥匙

秘密

查询字符串参数:

姓名

年龄

例如

0 投票
1 回答
1353 浏览

ruby-on-rails - 葡萄 API 组参数不起作用

我想在葡萄中创建一个 post 方法,我想收集一次所有参数

目前我正在使用它

谷歌搜索后我发现了类似的东西

我也想上传文件(即添加文件的参数)

0 投票
1 回答
3845 浏览

ruby-on-rails - 在 Rails 中使用 Grape API gem 不理解嵌套资源

这是我的 API 的样子:

我正在尝试像这样拨打电话:http://localhost/v1/companies/:company_id/service_requests/all但是当我拨打电话时,我收到了错误No route matches [GET] "/v1/companies/1/service_requests/all"

工作代码:

0 投票
1 回答
1195 浏览

android - 带有字符串参数的 Multipart-form 数据的 Ruby Grape 编码问题

我正在用葡萄和安卓客户端构建 API 服务器。

当我为上传内容和图像制作发布 API 时,遇到编码问题。

我使用“utf-8”编码将消息和图像发送到服务器,但服务器使用“ascii-8bit”编码识别消息。

我使用后面的代码测试了字符串信息。

结果是

所以这两个字符串具有相同的数据,但在服务器上无法理解。

感谢您的意见。

太浩。

0 投票
2 回答
4987 浏览

ruby-on-rails - 在 Grape gem 中设置状态码

使用 Grape gem 时如何自定义状态码响应?例如

这可以通过 error!({ error: 'Order not found'}, 404) 来实现,但是对于非错误如何做到这一点?

0 投票
1 回答
1731 浏览

grape-api - 葡萄:使用错误!和 Grape::Middleware 后回调

在葡萄中如果你使用错误!方法它会抛出一个错误并且永远不会调用 Grape::Endpoint "after" 回调。

我希望应用程序在出错时调用后挂钩!已被调用。

我添加了这个中间件来实现这一点。

有没有更好的方法来实现这一点?

谢谢