I am trying to get the GCP "Extensible Service Proxy" working proxying connections to a backend server, following this guide (replacing the backend with my custom one):
https://cloud.google.com/endpoints/docs/openapi/get-started-compute-engine-docker
However, after I start up ESP on the VM instance, when I try to test that the service is proxying correctly, I get a JSON error back from ESP saying "Method does not exist" (404 not found):
{
"code": 5,
"message": "Method does not exist.",
"details": [
{
"@type": "type.googleapis.com/google.rpc.DebugInfo",
"stackEntries": [],
"detail": "service_control"
}
]
}
I've confirmed that connectivity to the backend is not an issue (by running "exec" onto ESP and then running "curl" to confirm I'm getting an response back from the backend.
I've also tried running the above with an API key with the same result. What am I doing wrong here?
I’ve tried it on my end. I’ve followed the steps mentioned in this article. It did work for me. If you are reproducing the exact same steps as in the tutorial, then this error message could be caused by various reasons. I highly suspect that you entered the incorrect service name. Make sure that you have entered the correct service name.
Lastly, if it still doesn't work, please follow the troubleshooting steps as mentioned in this article.
In your case it seems to be an endpoints configuration issue! Please check if the path mapped into endpoints console Method column is the same you have inside your API code. If it not the same, fix your
openapi.yaml
file and deploy it again.