Hi all,
I’m stuck on a Routing Error I’m getting when calling my application
(App2)
from a test/stub application (App1), however when I enter the same
request
to App2 via the browser I do NOT get this routing issue and it works.
My problem is in more detail (if anyone can help) that:
[1] when I call an action in App2 from App1 I get a ROUTING ERROR,
“Recognition failed for /mycontroller/myaction” - this seems to come
from
App2’s inbuilt Rails framework which somehow sees a routing problem and
immediately sends back a “Routing Error” message without ever getting to
my
code within App2.
[2] when I use the browser with same "
http://localhost:3000/mycontroller/myaction" URL (i.e. that App1 seems
to be
correctly producing, although I don’t have a HTTP trace mechanism to
100%
prove this) App2 seems to work fine
[3] again I don’t see any log info turn up in App2 (as if the rails
framework picked up on the routing error first and then bounced it prior
to
my code getting involved)
[4] some details of my code below
Code Used (which resides in App1 running on port 3001 - it’s calling
App2
running on port 3000)
url = " http://localhost:3000/mycontroller/myaction"
uri = URI.parse(url)
response = nil
Net::HTTP.start(uri.host, uri.port) do |request|
response = request.post(uri.path, postData)
end
Note that “response.body” here gives:
Action Controller: Exception caught <>Routing Error
Recognition failed for "/mycontroller/myaction"
Browser Test
- Yet when I call the same URL from my browser it works (and doesn’t
give
this message). The URL I use here would be:
http://localhost:3000/mycontroller/myaction
Any ideas/help? I can’t seem to see what I’m doing wrong. Any way to
trace
the HTTP coming directly into App2 to see for myself what Rails is
doing?
What about a way to turn up the logging/trace for rails re HTTP?
Thanks in advance
Greg
(TextEdit / MacBook)