在我的java代碼中,我需要向其他人運行的服務器發送POST請求,以便在其服務器上登錄。但是,我嘗試登錄不起作用。如何驗證我的Java代碼是否實際發送了POST請求?
我希望能夠確定我的代碼的哪個部分產生此錯誤。有沒有一種方法可以檢查錯誤是否發出POST請求,使連接成爲GET請求?
在我的java代碼中,我需要向其他人運行的服務器發送POST請求,以便在其服務器上登錄。但是,我嘗試登錄不起作用。如何驗證我的Java代碼是否實際發送了POST請求?
我希望能夠確定我的代碼的哪個部分產生此錯誤。有沒有一種方法可以檢查錯誤是否發出POST請求,使連接成爲GET請求?
您可以在瀏覽器中的開發人員工具欄中查看您的請求。如果這不是您的選擇,那麼您可以使用Charles Debugger或Wireshark等工具。
如果您正在使用HttpClient
庫發送HTTP POST請求,那麼我建議修改你的log4j.properties文件如下
#Logger configuration for Apache Commons HTTP Client
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%c] %m%n
log4j.logger.httpclient.wire=debug, stdout
這將打印完整的請求(頭,身體,URL & PARAMS)&響應(頭文件,正文)正在進行。
希望可以幫到
查看responseCode? –
問題是,服務器的響應與沒有發送任何數據並僅使用GET請求來檢索頁面相同,所以我不確定它是否確實發送了我希望它發送的數據,而我還聽說過有關數據未被髮送的問題。 –
暫時讓它使用你自己的服務器。然後觀看服務器日誌。或者,如果它不是HTTPS,則可以使用Wireshark。 (這包括如果您有意使用自己的非HTTPS服務器進行測試) – immibis