2

node.jsとpassport.jsで行われたexpress.js APIにアクセスしようとしています。一部のメソッドは、req.use が使用可能な場合にのみ機能します。

クライアント アプリから facebook と twitter でログインしようとすると、プレーン cookie が取得されます。

connect.sid=jkbsdkjabdkjasdbjkadnaidiadiasdaoidoa のようなもの

このメソッドでクライアント Cookie を再作成します。

            BasicClientCookie clientCookie = new                BasicClientCookie(Metadata.COOKIE_LOGIN, cookieValue);
    clientCookie.setDomain("www.domain.com");
    clientCookie.setPath("/");
    Calendar calendar = Calendar.getInstance();
    calendar.add(Calendar.DAY_OF_MONTH, 1);
    clientCookie.setExpiryDate(calendar.getTime());
    return clientCookie;

その後、これで Json リクエストを作成します。

    HttpUriRequest request = method.createRequest(uri);
    request.addHeader("Accept", "application/json");
    HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);
    DefaultHttpClient client = new DefaultHttpClient(params);
    client.getCookieStore().addCookie(USER_SESSION_COOKIE);
    HttpResponse response = client.execute(request);
    String serializedJson = EntityUtils.toString(response.getEntity(), HTTP.UTF_8);
    T fromJson = gsonParser.fromJson(serializedJson, clazz);

いつものように、エクスプレスルートメソッドに乗ることができません。

私は何か間違ったことをしていることを知っていますが、何がわかりません。

Androidアプリとpassport.jsの間で接続を行った人はいますか?

皆さん、ありがとうございました!

4

1 に答える 1

0

永続的な Cookie ストアで OkHttp を使用する方法についての簡単な洞察については、この質問を参照してください。HTTP ライブラリを使用して REST API にアクセスすると、作業がはるかに簡単になります。

于 2017-01-05T14:13:25.007 に答える