日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

通过Dapr实现一个简单的基于.net的微服务电商系统(九)——一步一步教你如何撸Dapr之OAuth2授权-百度版...

發布時間:2023/12/4 windows 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 通过Dapr实现一个简单的基于.net的微服务电商系统(九)——一步一步教你如何撸Dapr之OAuth2授权-百度版... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄:

一、通過Dapr實現一個簡單的基于.net的微服務電商系統

二、通過Dapr實現一個簡單的基于.net的微服務電商系統(二)——通訊框架講解

三、通過Dapr實現一個簡單的基于.net的微服務電商系統(三)——一步一步教你如何擼Dapr

四、通過Dapr實現一個簡單的基于.net的微服務電商系統(四)——一步一步教你如何擼Dapr之訂閱發布

通過Dapr實現一個簡單的基于.net的微服務電商系統(五)——一步一步教你如何擼Dapr之狀態管理

通過Dapr實現一個簡單的基于.net的微服務電商系統(六)——一步一步教你如何擼Dapr之Actor服務

通過Dapr實現一個簡單的基于.net的微服務電商系統(七)——一步一步教你如何擼Dapr之服務限流

通過Dapr實現一個簡單的基于.net的微服務電商系統(八)——一步一步教你如何擼Dapr之鏈路追蹤

通過Dapr實現一個簡單的基于.net的微服務電商系統(九)——一步一步教你如何擼Dapr之OAuth2授權

在上一篇文章中案例使用了github的oauht2.0授權,實際上使用哪個平臺并不局限,只要平臺實現了oauth2.0標準都可以接入。本節我們聊聊如何集成百度oauth2.0。

  本來想集成微信/QQ/微博的,結果發現不是需要企業資質就是要個人認證,就百度開放平臺不需要,就用百度來演示吧。

  首先我們需要注冊并登錄百度開發者平臺,同時創建一個應用,獲取它的API Key和Secret Key

  進入應用詳情后在點擊左下角的安全設置,配置我們的鑒權域名【http://oauth.dapreshop.com:30882】到授權回調頁并禁用Implicit Grant授權方式,其他不用填如下圖:

?

?

    接著修改我們的component文件,錄入剛才我們獲取的API Key和Secret Key到clientid和clientsecret一欄,并修改scopes、authURL、redirectURL如下所示,修改完畢后記得重新apply一下

apiVersion: dapr.io/v1alpha1

kind: Component

metadata:

? name: baiduauth

? namespace: dapreshop

spec:

? type: middleware.http.oauth2

? version: v1

? metadata:

? - name: clientId

? ? value: ""

? - name: clientSecret

? ? value: ""

? - name: scopes

? ? value: "basic"

? - name: authURL

? ? value: "http://openapi.baidu.com/oauth/2.0/authorize"

? - name: tokenURL

? ? value: "https://openapi.baidu.com/oauth/2.0/token"

? - name: redirectURL

? ? value: "http://oauth.dapreshop.com:30882"

? - name: authHeaderName

? ? value: "myauth"

 4、修改一下獲取用戶信息的代碼(這里是演示所以百度返回的openid我取前n位做登錄名):

var model = new Model() { login = "" };

? ? ? ? ? ? if (HttpContextExt.Current.Headers.Any(x => x.Key.ToLower().Equals("myauth")))

? ? ? ? ? ? {

? ? ? ? ? ? ? ? var requestUri = new Uri($"https://openapi.baidu.com/rest/2.0/passport/users/getLoggedInUser?access_token={HttpContextExt.Current.Headers.FirstOrDefault(x => x.Key.ToLower().Equals("myauth")).Value.Replace("Bearer ", "")}");

? ? ? ? ? ? ? ? var result = await httpClientFactory.CreateClient().GetAsync(requestUri);

? ? ? ? ? ? ? ? if (result.IsSuccessStatusCode)

? ? ? ? ? ? ? ? {

? ? ? ? ? ? ? ? ? ? var content = await result.Content.ReadAsStringAsync();

? ? ? ? ? ? ? ? ? ? baidumodel obj = JsonSerializer.Deserialize<baidumodel>(content);

? ? ? ? ? ? ? ? ? ? HttpContextExt.Current.Response.Cookies.Append("githubuser", JsonSerializer.Serialize(new Model() { login = obj.openid.Substring(0,8), name = obj.uname, avatar_url = $"http://tb.himg.baidu.com/sys/portraitn/item/{obj.portrait}" }),

? ? ? ? ? ? ? ? ? ? ? ? new Microsoft.AspNetCore.Http.CookieOptions() { Domain = "dapreshop.com" });

? ? ? ? ? ? ? ? ? ? HttpContextExt.Current.Response.Redirect("http://admin.dapreshop.com:30882");

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? return model;

  重新啟動整個demo,這時候再次點擊圖標,我們會跳轉至百度的授權頁

  回跳后重新初始化就能看到我們取到了百度授權的用戶信息

相關文章:

  • Dapr能否引領云原生中間件的未來?

  • 云原生 | 阿里巴巴的Dapr實踐與探索

  • Dapr | 云原生的抽象與實現

  • Dapr 可視化指南

  • Dapr 知多少 | 分布式應用運行時

  • Dapr 正式發布 1.0

  • Dapr 交通流量控制示例

  • Dapr是如何簡化微服務的開發和部署

  • 微軟開源微服務運行時Dapr,賦能云原生應用開發

  • YARP實現Dapr服務調用的反向代理

  • Dapr微服務應用開發系列0:概述

  • Dapr微服務應用開發系列1:環境配置

  • Dapr微服務應用開發系列2:Hello World與SDK初接觸

  • Dapr微服務應用開發系列3:服務調用構件塊

  • Dapr微服務應用開發系列4:狀態管理構件塊

  • Dapr微服務應用開發系列5:發布訂閱構建塊

  • Windows環境下Dapr入門

  • 云原生 | .NET 5 with Dapr 初體驗

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(二)——通訊框架講解

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(三)——一步一步教你如何擼Dapr

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(四)——一步一步教你如何擼Dapr之訂閱發布

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(五)——一步一步教你如何擼Dapr之狀態管理

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(六)——一步一步教你如何擼Dapr之Actor服務

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(七)——一步一步教你如何擼Dapr之服務限流

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(八)——一步一步教你如何擼Dapr之鏈路追蹤

  • 通過Dapr實現一個簡單的基于.net的微服務電商系統(九)——一步一步教你如何擼Dapr之OAuth2授權

  • WebAssembly + Dapr = 下一代云原生運行時?

  • dapr 應用開發 | 環境配置

  • 乘風破浪,.Net Core遇見Dapr,為云原生而生的分布式應用運行時

總結

以上是生活随笔為你收集整理的通过Dapr实现一个简单的基于.net的微服务电商系统(九)——一步一步教你如何撸Dapr之OAuth2授权-百度版...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。