Azure Logic Apps: 405 – Method Not Supported Errors from HttpListener

This one starts with a joke:

A gentleman walks up to a wall and starts banging his head against it.  Hard.  In fact, he bangs his head so hard, that people around grow concerned and one person says to him, “Sir, why do you keep banging your head against the wall?”  He replies, “Because it feels so good when I stop.”

So, like the gentleman in the above joke, I’ve been (figuratively) banging my head against the wall while trying to figure out how to invoke a Logic App I have deployed to the Azure cloud via an HttpListener.

I was using a PostAsync() call on the HttpClient to invoke the listener, but kept getting a 405 - Method Not Supported exception from the service. I was pretty sure POST should have been allowed! After checking the address, double-checking all the configurations, and so forth I couldn’t figure out why I would get the response I got (hence, the figurative banging of my head against a wall).

As is often the case, I found the answer in a post on an MSDN forum. When I copied the URL from the API definition of my HttpListener in Azure, it began with http instead of https, which was required.  A simple mistake and easy to miss.

After making the URL correction, adding an “s” to http, my calls to the service worked just fine.

And it feels really good now that I’ve stopped banging my head against the wall.

Presenting at TechFuse 2015

I’m proud to announce that I’ve been selected as a speaker at TechFuse 2015!  The conference takes place at the Minneapolis Convention Center on April 21, 2015. I’ll be presenting “Getting Started with Microsoft Azure API Management”  in the Development track.  As usual, presentation slides and sample code will be available on this site sometime after the conference. If you’ve got a day to take in some awesome tech content, come by and check it out!  More info is available here: http://www.techfusemn.com/

Follow

Get every new post delivered to your Inbox.

Join 409 other followers

%d bloggers like this: