サードパーティAPIの機能のため、リダイレクトを回避するために、Cookieを介してメッセージをサーバーから戻す必要があります。ConnectionRequestで受信したCookieは、iOSとAndroidで異なります。
サーバは「メッセージ」と呼ばれるクッキーにメッセージを入れている場合は、私がConnectionRequestからそれを集めることだし、後にユーザに表示するためにそれを保存します。
このコードは接続要求を行い、受信したCookieを記録します。
ConnectionRequest makeRequest = new ConnectionRequest(postURL, true) {
@Override
protected void cookieReceived(Cookie c) {
Log.p(c.getName());
Log.p(c.getValue());
if (c.getName().equals("message")) {
//Save message for display here
}
}
};
アンドロイドとシミュレータでは、「メッセージ」というCookieが1つだけログに記録され、正常に動作します。 iOSでは、「PHPSESSID」という1つのCookieしかログに記録されないため、メッセージは収集または保存されません。サーバはユーザエージェントまたはそのような何かに基づいてその応答を変更しません
、それだけで要求を処理し、適切なメッセージでクッキーを設定し、正しいエンドポイントにリダイレクトを返します。上記のコードは、異なるプラットフォーム上のコードネームの1つのクライアントによって異なる方法で処理されているようです。
受信したすべてのCookieが上記のコードで記録され、Android、iOS、およびシミュレータが同じ機能を果たすことが期待されます。
iOSで 'メッセージ' Cookieを取得するにはどうすればよいですか?