文档首页> API网关 APIG> 用户指南(阿布扎比区域)> 常见问题> API调用> "The API does not exist or has not been published in the environment."如何解决?
更新时间:2023-05-09 GMT+08:00

"The API does not exist or has not been published in the environment."如何解决?

调用API网关中开放的API报错,请按以下顺序排查可能原因:

  1. 调用API所使用的域名、请求方法、路径不正确。
    • 比如创建的API为POST方法,您使用了GET方法调用。
    • 比如访问的URL比API详情中的URL少一个“/”也会导致无法匹配上此API,例如http://7383ea59c0cd49a2b61d0fd1d351a619.apigw.region.cloud.com/test/和http://7383ea59c0cd49a2b61d0fd1d351a619.apigw.region.cloud.com/test会匹配上不同的API。
  2. API没有发布。API创建后,需要发布到具体的环境后才能使用。具体操作请参考《API网关用户指南》中“发布API”章节。如果发布到非生产环境,检查请求“X-Stage”头是否为发布的环境名。
  3. 域名解析不正确。如果API的域名、请求方法、路径正确,且已发布到环境,有可能是没有准确解析到您的API所在分组。请检查API所在的分组域名,例如您有多个API分组,每个分组有自己的独立域名,API调用时,使用了其他分组的独立域名。
  4. 检查API是否使用OPTIONS跨域请求,如果使用OPTIONS跨域请求,请在API中开启CORS,并创建OPTIONS方式的API。具体操作请参考《API网关用户指南》中“开启跨域共享”章节。