0
我正在測試一個支持POST請求的簡單登錄服務。netflix feign POST請求問題
儘管我已經在代碼中指定了POST並且日誌還反映了POST,但仍然收到錯誤405 Method Not Allowed。 這段代碼有沒有錯誤?
這是我的代碼
public interface LoginClient {
@RequestLine("POST")
@Headers("Content-Type: application/json")
AuthenticationToken login(LoginCredential loginCredential);
}
下面是日誌
11:30:33.895 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] ---> POST https://staging-test.nl/api/v0.1/login HTTP/1.1
11:30:33.899 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] Content-Type: application/json
11:30:33.899 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] Content-Length: 59
11:30:33.899 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login]
11:30:33.899 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] {
"username": "testuser",
"password": "passw0rd"
}
11:30:33.899 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] ---> END HTTP (59-byte body)
11:30:35.014 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] <--- HTTP/1.1 405 Method Not Allowed (1115ms)
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] allow: POST, OPTIONS
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] content-type: application/json
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] date: Thu, 24 Aug 2017 08:30:34 GMT
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] okhttp-received-millis: 1503563435003
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] okhttp-sent-millis: 1503563434818
11:30:35.015 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] server: nginx/1.11.8
11:30:35.017 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] transfer-encoding: chunked
11:30:35.017 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] vary: Cookie
11:30:35.017 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] x-frame-options: SAMEORIGIN
11:30:35.017 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login]
11:30:35.019 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] {"detail":"Method \"GET\" not allowed."}
11:30:35.019 [main] DEBUG com.baeldung.feign.clients.MyLoginClient - [MyLoginClient#login] <--- END HTTP (40-byte body)