0

我在乘客下运行一个 Sinatra 应用程序。我有一个大致如下所示的动作:

get '/pic/:id' do
  # do stuff ...
  canonical_image_url = "/img/%d.jpg" % params[:id]
end

但是我看到我的应用程序失败并出现以下异常 ArgumentError (invalid value for Integer(): "22?fill=width&width=512&sig=173798632b6ce659234a34c05324196c92b9a8ef")

这意味着以某种方式没有从路径中提取 QS 参数。这是某种奇怪的逃避问题吗?(我的应用程序的某些部分使用双编码查询字符串请求)还是这是一个已知问题?还是这样设计的,路径参数和QS参数不能同时使用?

4

1 回答 1

1

一种更简单的编写方法(这可能无助于解决您的问题,但评论太长了):

get '/pic/:id' do |id|
  # do stuff ...
  canonical_image_url = "/img/%d.jpg" % id
end
于 2012-07-04T17:39:18.293 回答