1

ユーザーが OpenId または OAuth 経由で登録するときに、Web サイトにユーザーの電子メール アドレスとアバターを自動的に追加するようにしたいと考えています。MVC 5 では、ユーザーは openId の Google、Facebook、または Twitter アカウントで登録およびログインできますが、リンクされた情報が Web サイトに返されないようです。

ユーザーの登録時に作成されるユーザー プロファイル モデルが既にありますが、メール アドレスとアバターを要求せずに追加できるようにしたいと考えています。ユーザーが openId を通じて登録した後、Google/Facebook/Twitter アカウントに関連付けられているユーザーのリンクされたアバターと電子メール アドレスにアクセスするにはどうすればよいですか?

これまでのところ、私が見つけて試した情報は、MVC 4 または MVC 5 のリリース候補に適用できるようで、機能していないようです。

ありがとう

4

2 に答える 2

1

Gravatarを調べると、実装が非常に簡単で、より多くの画像を取得できる場合があります。

彼らのサイトから....

「アバター」とは、オンラインであなたを表す画像です。ウェブサイトを操作するときに名前の横に表示される小さな画像です。Gravatar は世界的に認められたアバターです。アップロードしてプロファイルを一度作成すると、Gravatar 対応のサイトに参加すると、Gravatar 画像が自動的にそこに続きます。Gravatar は、サイト所有者、開発者、およびユーザー向けの無料サービスです。すべての WordPress.com アカウントに自動的に含まれ、Automattic によって実行およびサポートされます。

于 2013-11-08T23:30:49.873 に答える
1

ここでまったく同じ質問をしました:

mvc 5 で Google 認証を使用しているときにメール アドレスを取得するにはどうすればよいですか?

クレジットは答えのためにjd4uに行きます

これは、ClaimIdentity から Email Claim として取得できます。

この例を確認してください

var email = externalIdentity.FindFirstValue(ClaimTypes.Email);

プロフィール写真に関しては、jd4u が再度指摘してくれました :

外部認証プロバイダーを使用して MVC5 フレームワーク OAuth/OWin ID プロバイダーから ExtraData を取得する

作業が少ないように思えたので、代わりにグラバター画像を使用することになりました。とにかく、それがグラバターの目的です...

于 2013-11-07T07:44:55.553 に答える