0

ログインしたJodd状態でプロフィールにコメントを投稿するにはどうすればよいですか?httpclient

final HttpBrowser browser = new HttpBrowser();

HttpRequest request = HttpRequest.get("www.facebook.com");
browser.sendRequest(request);

String page = browser.getPage();
Jerry doc = Jerry.jerry(page);

// process login form
doc.form("#login_form", new JerryFormHandler() {
    public void onForm(Jerry form, Map<String, String[]> parameters) {

        String formAction = form.attr("action");
        HttpRequest loginRequest = HttpRequest.post(formAction);

        for (Map.Entry<String, String[]> entry : parameters.entrySet()) {
            String[] values = entry.getValue();
            String name = entry.getKey();

            for (String value : values) {
                loginRequest.form(name, value);
            }
        }

        // overwrite form parameters
        loginRequest.form("email", "your-email-here", true);
        loginRequest.form("pass", "your-password-here", true);

        browser.sendRequest(loginRequest);
    }
});

// this is your personal page:
System.out.println(browser.getPage());
4

1 に答える 1

0

これはプログラミングの質問ではありませんが、答えさせてください:) Jodd Httpは、セッションを維持するという意味でブラウザをエミュレートすることもできるhttpライブラリです。そのため、たとえば、いくつかのサイトにログインして、同じセッション。

したがって、質問はあなたが使用しているツールにはあま​​り関係がなく (良い選択です:)、Facebook がどのように機能するかについてです。ここではその API を使用していないため、自分で調査する必要があります。これを行う最善の方法は、実際のブラウザーを使用して開発者ツールを開くことです (すべてのブラウザーに備わっています)。開発者ツール内には通常、「Net」という名前のタブがあり、ブラウザとサイト間のすべてのトラフィックを確認できます。HTML 以外のリクエストを除外して、画像、スクリプト、CSS をロードするすべてのリクエストを削除します。

ブラウザで手順を実行し、何が送信されているかを確認するだけです。次に、 Joddを使用して同じリクエストに返信するだけです:)

友達を追加するリクエストの例を次に示します。

フェイスブックのリクエスト例

(テスト目的で) 同じリクエストに返信したところ、ほら、10 分後にテスト アカウントにたくさんの友達ができました :)

于 2013-11-08T09:39:29.870 に答える