未知方法
未知方法錯誤是一種 WebDriver 錯誤,當驅動程式無法識別用於端點的 HTTP 請求方法時發生。
WebDriver 提供了一個基本符合 REST 風格的 API,並非此 API 中的所有端點都具有 GET、POST 和 DELETE 方法。當您嘗試使用端點不支援的 HTTP 請求方法呼叫它時,就會發生此錯誤。
示例
“新會話”命令提供了一個 POST 請求端點,允許您建立新的 WebDriver 會話
bash
% curl -d '{}' https://:4444/session
{"sessionId":"d4605710-5a4e-4d64-a52a-778bb0c31e00","value":{"XULappId":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}","acceptSslCerts":false,"appBuildId":"20160913030425","browserName":"firefox","browserVersion":"51.0a1","command_id":1,"platform":"LINUX","platformName":"linux","platformVersion":"4.9.0-1-amd64","processId":17474,"proxy":{},"raisesAccessibilityExceptions":false,"rotatable":false,"specificationLevel":0,"takesElementScreenshot":true,"takesScreenshot":true,"version":"51.0a1"}}
它還實現了用於結束會話的 DELETE 方法
bash
% curl -X DELETE https://:4444/session/d4605710-5a4e-4d64-a52a-778bb0c31e00
{}
但是,它不提供 GET 方法(例如),因此會返回“未知方法”錯誤
bash
% curl https://:4444/session/650f9df3-740e-314c-958d-307e41752fae
{"value":{"error":"unknown command","message":"GET /session/650f9df3-740e-314c-958d-307e41752fae did not match a known command","stacktrace":""}}%