問題:呼叫OGWebAPI,有些API會發生Http Status 405的錯誤。
呼叫OGWebAPI,有些API會發生Http Status 405的錯誤。
以SampleOGWebAPI.4為例,呼叫SetGroup,卻發生Http Status 405的錯誤。
Web API在使用 HTTP Method PUT或DELETE時,會與WebDAV套件衝突。
當發生衝突時,就會顯示以下錯誤訊息:
# English
405 - HTTP verb used to access this page is not allowed.
# 中文
405 - 不允許用來存取此網頁的 HTTP 指令動詞。
兩種解法,擇一均可
-
修改OGWebAPI中Web.config,移除WebDAV
在 <modules> 標籤中加入 <remove name="WebDAVModule"/> 及 <handlers> 標籤中加入 <remove name="WebDAV" />。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<modules>
<!-- ... -->
<remove name="WebDAVModule"/>
</modules>
<handlers>
<!-- ... -->
<remove name="WebDAV" />
</handlers>
</system.webServer>
</configuration>
-
從 IIS 中移除WebDAV套件
如果是 Windows Server 的話,打開伺服器管理員,移除角色及功能精靈,找到 WebDAV 發行 (WebDAV Publishing) 取消勾選後移除。如圖:
如果是 Windows 10的話,打開控制台\程式集,開啟或關閉Windows功能,找到 WebDAV 發行 (WebDAV Publishing) 取消勾選後移除。如圖:
最後檢閱日期:2019/08/16
適用門將版本號:4.4.106.0含以上
問題編號:2019081601