5

Facebook認証をテストするためにSeleniumを使用しているプロジェクトがあります。Facebook アプリを作成し、このアプリ内にテスト ユーザーを作成し、Facebook ログインを使用していくつかのテストを作成しました。今まで、それは働いていました。しかし、この 2 週間で Facebook で何かが変わり、私のテストは失敗しました。これは、アクセス許可ダイアログのインターフェイスの変更によるものです (私は彼の ID でボタンをターゲットにしています)。2 つ目の問題は、Facebook のテスト ユーザーから電子メール アドレスを取得できず、75 文字を超えるプロキシ メールを取得できないことです (使用しているフレームワークでは、データベース フィールドの長さがハードコードされています)。

通常のユーザーとしてログインすると、正しく機能し、次の許可ボックスが表示されます。

ここに画像の説明を入力

しかし、作成したテスト ユーザーとしてログインすると (アプリの開発者ロールで「切り替え」を介して)、次のボックスが表示されます。

ここに画像の説明を入力

約 2 週間前にテストしましたが、これはまだ機能していました。今日は変更されています。だから私の質問:

  • テスト ユーザー用の古いアクセス許可ボックスを取り戻すには?
  • プロキシではなく実際のメールアドレスを取得するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

0

ログイン ダイアログがテスト ユーザーと異なるのはなぜですか?

テスト ユーザーを使用して、ログイン ダイアログの未来を確認できます。実際、これは「機能していない」わけではありませんが、これは 2012 年 12 月に発表されたアップデートです。

ログイン ダイアログのデザインが変更され、アプリが要求する権限が理解しやすくなりました。プレゼンテーションを簡素化し、より明確にするために文言も更新しました。

何が共有されているかを反映するために、「基本情報」は「公開プロフィールと友達リスト」に名前が変更されました。公開プロフィールにアクセスするアプリは、名前、プロフィール写真、年齢層、性別、言語、国、その他の公開情報を取得します。

出典:人々に明確さとコントロールを提供する、developers.facebook.com /blog

この更新に通常のユーザーが対応しない理由は、Facebook が全員を同時に更新することを使用していないためです。国、アカウントの種類、または私が無視するその他のパラメーターに応じて、部分的に更新を開始します。

開発者アカウント専用の部分的な更新 ( Unified_message FQL テーブル) の例:

新しいメッセージング システムが広く利用可能になるまで、登録済みの開発者アカウントに対してのみ、この API への早期アクセスを提供しています。現時点では、実稼働アプリケーション用のメッセージ テーブルを使用する必要があります。

私たちの場合、テストユーザーが更新にアクセスできることがわかりましたが、次のようにも言われています。

これらの改善の多くは、iOS6 統合の一環としてすでに開始されており、現在、より広範囲に展開されています。


プロキシメールについて

実際、プロキシメールは、ユーザーが実際のメールを匿名に保つ方法です. プロキシメールを考慮する必要があります。

  1. アプリに参加するとき、ユーザーは実際の電子メールとプロキシ電子メールのどちらかを選択できます。プロキシメールの選択

  2. 他に想定する必要があるのは、アプリへの接続時にアカウントを検証しなかったユーザーです。これは、こちらおよびこちら で説明されている可能性があります。

  3. では、テスト ユーザーがプロキシ メールを返すのはなぜでしょうか。テスト ユーザー (ボットであり、偽の電子メールを持っている)が電子メールを検証しなかったためです。

少なくとも 3 つのケース (そして最後に、テスト ユーザーが良い例です) で、これらのプロキシ メールを処理する必要があることがわかります。それらは、開発者が偶発的または偶然に遭遇するものであり、無視することはできません。あなたのケースでは、プロキシメールを持っているテストユーザーがアプリにアクセスできないようにすることもできます。ただし、それらを受け入れる必要があり、元の電子メール アドレスの共有を強制するべきではありませんより良い解決策は、テスト ユーザーのメールを検証することです。

  1. プロキシ メールを提供するテスト ユーザー アカウントに接続します。
  2. メールアドレスを追加(ここではパスワードが必要です)、
  3. 電子メールのメールボックスに移動し、検証リンクをクリックします。
  4. 新しいメールアドレスをプライマリとして設定し、
  5. テスト ユーザーは、プロキシではなく元のメール アドレスを提供する必要があります。
于 2013-03-01T21:38:49.293 に答える
0

認証ダイアログでも同じ問題が発生しました。3月/4月も含めて色々な設定の新旧アプリで試してみました。2013 重大な変更を有効/無効にしましたが、役に立ちませんでした。
ただし、メールの問題についてはお手伝いできると思います。テスト ユーザーとしてログインしてアカウント設定ページに移動すると、テスト ユーザーのプライマリ メール アドレスが表示されます。デフォルトでは、これは私が添付した画像のように非常に長いものになるはずです。

Facebookテストユーザーのデフォルトのメールアドレス設定

Facebook プラットフォームは、このプライマリ メール アドレスを返します。テスト ユーザー アカウントで認証ダイアログを通過し、プライバシー設定ページを表示すると、デフォルトのプライマリ メール アドレスがアプリと共有されていることがわかります。テスト ユーザーに新しいメール アドレスを提供し、アカウント設定ページで新しいメール アドレスをプライマリ メール アドレスとして設定する必要があります。

于 2013-02-25T12:24:55.813 に答える