Received 405 Response without Allow Header - Fault returned only when access from Portal

Not applicable

I have the below fault returned only when i access from Portal. When do the same in through SOAP UI it is good. Can you help on this ?

{
    "fault": {
        "faultstring": "Received 405 Response without Allow Header",
        "detail": {
            "errorcode": "protocol.http.Response405WithoutAllowHeader"
        }
    }
}

I referred an another community response on this same kind of issue. But, I have all the recommendation what given here in my proxy : https://community.apigee.com/questions/22/apigee-pre-flight-options-requests.html

what could be the reason, works in SOAP UI, but not in Portal ?

2 2 18.1K
2 REPLIES 2

I believe SOAP UI is a installed app - it runs on the laptop or PC, right?

That kind of "Fat" client is not subject to the same-origin policy that Browsers must observe.

Therefore the CORS is not necessary, for calls to succeed from SOAP UI.

Conversely, when you invoke the request from the Developer Portal (I think that's what you mean by "from Portal"), you are using a web browser which is subject to the same-origin policy. Therefore the CORS must be implemented correctly.

I think that whatever you have done in the proxy - it is possible that the CORS is not quite right.

On the other hand, Looking at the fault message you shared... it appears to be coming from a backend (target) server. Is it possible your backend is returning a 405? You can verify this by turning on Trace in Apigee Edge.

If this is the case, then you need to look at the message being sent to the backend , and determine if the 405 response is correct. According to RFC 2616, the 405 response MUST include an Allow header. I think the fault you are seeing is generated by Apigee Edge, which is telling you that the backend response is invalid according to the IETF protocol definition for HTTP.

This fault is probably related to CORS, but is not the same as CORS. If it were strictly a CORS issue, then the error you would see would be thrown in the browser, not in Apigee Edge. But somehow CORS is involved, because ... of the 405.

Good luck!

Hi @kumaresansithambaram,

Were you able to identify what was wrong with your request. Can you provide some details if you resolved this error at your end?

Thanks.