My setup: Rails 3.0.9, Ruby 1.9.2
On my development machine with webrick, an incoming POST request from an external service such as
https://localhost:3000/projects?name=stuff&length=5
request.fullpath shows
/projects?name=stuff&length=5
On Heroku, request.fullpath shows
/projects
Does anyone know why?
UPDATE
I’m merely showing request.fullpath output using logger
ProjectsController.rb
def create
Rails.logger.debug "\n\nfullpath=#{request.fullpath}\n\n"
...
end
If it makes any difference, I just remembered that the POST from the external service is HTTPS. I have configured the external service to POST using HTTP and still has the same issue.
In case anyone is curious, I check Heroku’s version using the console
>> Rails::VERSION::STRING
=> "3.0.9"
>> RUBY_VERSION
=> "1.9.2"
It looks like
fullpathshould always return the query string–see these tests in the Rails source code.What does the form that performs the POST look like? Are you positive that there were no differences in your test on development and production?