调用Azure数字孪生(ADT) REST API POST请求返回405 Method Not Allowed错误
错误原因
405状态码代表请求方法不被目标接口允许,本次报错的根因为:
- 你请求的路径
/digitaltwins/query属于单数字孪生实例操作接口,该接口仅支持响应头Allow字段列出的DELETE、GET、PATCH、PUT四种方法,不接受POST请求。 - ADT的查询类POST接口的正确路径是根路径下的
/query,而非/digitaltwins子路径下的query,路径写错导致请求打到了不支持POST的接口上。
解决方法
直接修改请求URL即可,修正后的完整curl命令如下:
curl -i --location --request POST 'https://{yourAdtName}.api.eus.digitaltwins.azure.net/query?api-version=2020-10-31' \ --header 'Authorization: Bearer {Your-Bearer-Token}' \ --header 'Content-Type: application/json' \ --header 'Message-Id: 12345' \ --data-raw '{ "query": "SELECT * FROM DIGITALTWINS" }'
- 核心修改点:把原URL中
/digitaltwins/query改为/query,移除多余的/digitaltwins路径前缀
内容的提问来源于stack exchange,提问作者starbucks
相关产品推荐
相关产品推荐

