Microsoft.AspNetCore.Authentication.Facebook libraryを使用してMicrosoftアカウントからプロフィール画像を取得するにはどうすればよいですか?私はクレームを使ってみましたが、プロフィールの画像の価値はありません...私は画像のURLをチェックしてアカウントのソース管理を調べてみましたが、URLはいくつかのパラメータから成り立っています。だから私はfacebookでできるようにURLを構築することはできません...誰かが私を助けることができますか?asp.netコアのMicrosoftアカウントから外部ログインプロフィール画像を取得する方法
4
A
答えて
0
は、Microsoftのグラフを使用して、Microsoftアカウントからプロフィール画像を取得することができます。プロフィール画像を要求する方法について https://developer.microsoft.com/en-us/graph/quick-start
具体的な指示: https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/profilephoto_get
クイックスタートに従っている場合(ASPを選択します。 「アプリIDとシークレットを取得」をクリックしてサンプルコードをダウンロードすると、簡単にデータを取得できます。
GraphServiceClient graphClient = SDKHelper.GetAuthenticatedClient();
var photoStream = await graphService.GetCurrentUserPhotoStreamAsync(graphClient);
ED IT:申し訳ありませんが、asp.netのコア部分を忘れました(Microsoft.Identity.Clientがasp.netコアで利用可能ではないようです)。
ExternalLoginCallbackでは、var info = await _signInManager.GetExternalLoginInfoAsync();によって返されたExternalLoginInfoオブジェクトからアクセストークンを取得できます。 は(そうでない場合は、アクセストークンは使用できません)認証を設定するときにtrueにSaveTokensを設定することを忘れないでください:
services.AddAuthentication()
.AddMicrosoftAccount(options =>
{
options.ClientId = Configuration["ExternalProviders:Microsoft:ClientId"];
options.ClientSecret = Configuration["ExternalProviders:Microsoft:ClientSecret"];
options.SaveTokens = true;
...
そして、それはhttpリクエストを行うだけの問題だ - このような何か:
var httpClient = new HttpClient();
httpClient.SetBearerToken(info.AuthenticationTokens.Where(t => t.Name.Equals("access_token")).First().Value);
var pictureResult = httpClient.GetAsync("https://graph.microsoft.com/v1.0/me/photo/$value").Result;
関連する問題
- 1. ASP.Netコアのwwwroot/imagesから画像を取得
- 2. 外部からアップロードされた画像のImageDataを取得する方法は?
- 3. 外部URL取得画像
- 4. 外部XMLから画像を取得してアプリケーションで表示する方法
- 5. 外部URL画像を取得する
- 6. asp.netコア内のfacebookユーザープロフィール画像を取得する方法MVC RC2
- 7. ASP.NETコアの外部ログインからユーザー名を取得するには?
- 8. ASP.NETコアのDbContextからIHostingEnvironmentを取得する方法
- 9. Imgurから自分のアカウントの画像リンクを取得する
- 10. HttpContextからASP.NETコアMVCフィルタを取得する方法
- 11. 画像ライブラリから画像URLを取得する方法
- 12. 画像URLから画像データを取得する方法
- 13. Microsoft Graph APIの個人用Microsoftアカウントのアプリケーションアクセス許可を取得する方法
- 14. 他のアカウントからInstagram画像を取得できません
- 15. アプリケーションの外部にあるコンピュータのフォルダから画像を取得するAdobe Airアプリケーションの作成方法
- 16. ファイル名から画像の寸法を取得する方法
- 17. Asp.NetコアURLからRouteData値を取得
- 18. ASP.NetコアDIコンテナからサービスを取得
- 19. 画像のタッチ部分ビットマップを取得する方法は?
- 20. 外部キーからオブジェクトの値を取得する方法は?
- 21. node.jsからサーバの外部IPを取得する方法
- 22. 外部のウェブサイトからdivテキストを取得する方法
- 23. プロジェクト外の画像を取得する方法
- 24. SwiftのGoogle画像から画像を取得する方法は?
- 25. ASP.NetコアのSqlServerDBContextOptionsExtensionsから接続文字列を取得する方法
- 26. ASP.netコアに画像を追加する
- 27. php(Codeigniter)のフォルダから画像を取得する方法
- 28. xmlから複数の画像を取得する方法
- 29. WPFのmenuitem.iconにリソースファイルから画像を取得する方法
- 30. ポーチから複数の画像を取得する方法
おそらくhttps://stackoverflow.com/questions/37904271/how-to-retrieve-facebook-user-profile-picture-within-asp-net-core-mvc-rc2があなたの質問に対する答えです。 –