I've run into an issue with Breeze such that when I try to call the Metadata action on my controllers, they fail with a 504 error.
The approximate call is //servername/breeze/controller/metadata
Environment
Web Api running via IIS7 on load balanced Win 2k8 Azure Virtual Machines
Versions (installed via NuGet) Breeze Client 1.4.2 Breeze Client and Server 1.4.2 Breeze Server - for ASP.NET Web Api (Core) 1.4.2 Breeze Server - for ASP.NET Web Api and Entity Framework 1.4.2
Update: Upgrading to Breeze 1.4.5 makes no difference
Previously it worked fine and the only recent change is the introduction of load balancing.
Of note, I also have multiple controllers, each with their own metadata.
Cases where it runs sucessfully
- Running via localhost.
- Removing the [BreezeController] attribute from my controller
- Renaming the metadata function
Cases where it fails
- When deployed
When running a simple test to return a string, eg:
[HttpGet] public string Metadata() { return "This was a test"; }
For some reason Breeze does not seem to like the Metadata function in my controller.
Updates:
It doesn't look like its specifically related to using a load balanced endpoint as I tried setting it up running directly on port 8080 with a non load balanced endpoint and had the same issue.
IIS failed request tracing doesn't seem to log anything for the failed request, though the request does appear in the IIS logs.