Connection.Response res = Jsoup.connect("http://www.example.com/login.php") .data("username", "myUsername", "password", "myPassword") .method(Method.POST) .execute(); Document doc = res.parse(); String sessionId = res.cookie("SESSIONID");
比較需要注意的是data內的資訊,
根據Connection api 指出
Add a number of request data parameters. Multiple parameters may be set at once, e.g.: .data("name", "jsoup", "language", "Java", "language", "English"); creates a query string like: ?name=jsoup&language=Java&language=English
表示是送出一串request至web認證,而前面的是key,後面的是value,依序放入connect內。
key的取得方法,以yahoo
- 右鍵開啟檢查(Inspect)
- 切換到Network
- 先點左上角的清空按鈕(紅按鈕旁)
- 輸入測試帳號
- 可以看到Name欄位多了一個data(有時可能多個,可從名字看出可能是哪一個)
- 拉到最下面的From Data
- 此例的key即為username/passwd
另外 Jsoup.connect("http://www.example.com/login.php") 這裡面的url也可從此視窗最上面的Request URL中取得
沒有留言:
張貼留言