第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

.NET Core 2.1 Web API Impersonation 在處理錯誤時導(dǎo)致

.NET Core 2.1 Web API Impersonation 在處理錯誤時導(dǎo)致

C#
白衣非少年 2021-11-07 19:41:02
我正在嘗試在 .NET Core 2.1 Web-API 中進(jìn)行模擬。所以這個 Web-API 使用 HttpClient 調(diào)用另一個 Web-API,我需要調(diào)用第一個的用戶也是執(zhí)行第二個的用戶。同樣的場景在另一個運(yùn)行完整框架的 Web-API 中也可以使用這個調(diào)用:((WindowsIdentity)_httpContextAccessor.HttpContext.User.Identity).Impersonate()由于Impersonate()在 .NET Core 2.1 中不可用,我搜索了一些示例WindowsIdentity.RunImpersonated并嘗試了與此類似的不同版本的代碼:WindowsIdentity identity = (WindowsIdentity)m_contextAccessor.HttpContext.User.Identity;HttpClient client = new HttpClient(new HttpClientHandler { UseDefaultCredentials = true });await WindowsIdentity.RunImpersonated(identity.AccessToken, async () =>{    var request = new HttpRequestMessage(HttpMethod.Get, url);    var response = await client.SendAsync(request);});這會引發(fā)錯誤,client.SendAsync錯誤消息是這樣的:在此調(diào)用仍在處理時調(diào)用了 WSALookupServiceEnd。調(diào)用已取消 ---> System.Net.Http.HttpRequestException堆棧跟蹤的開始:在 System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancelationToken) --- 內(nèi)部異常堆棧跟蹤結(jié)束 --- 在 System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken)取消令牌) 在 System.Threading.Tasks.ValueTask`1.get_Result() 在 System.Net.Http.HttpConnectionPool.CreateConnectionAsync(HttpRequestMessage 請求,CancellationToken 取消令牌)有沒有其他人看到過這個錯誤或?qū)θ绾谓鉀Q這個問題有任何見解?我嘗試了不同版本的代碼來RunImpersonated與HttpContext用戶進(jìn)行調(diào)用,但都導(dǎo)致了相同的錯誤。感謝您提供任何意見
查看完整描述

3 回答

?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗 獲得超7個贊

從 .NET Core 2.1 開始,SocketsHttpHandler 類提供了更高級別的 HTTP 網(wǎng)絡(luò)類(如 HttpClient)使用的實現(xiàn)。嘗試禁用此功能并查看異常是否消失。


查看完整回答
反對 回復(fù) 2021-11-07
?
森欄

TA貢獻(xiàn)1810條經(jīng)驗 獲得超5個贊

盡管這個錯誤非常模糊,但我很確定這個問題與服務(wù)器拒絕連接到端點有關(guān),或者它找不到端點。我的問題是網(wǎng)絡(luò)服務(wù)器看不到端點 - 僅供參考,不要使用“l(fā)ocalhost:xxxx”指向本地端口。相反,請在您的配置中使用服務(wù)器的完整 IP 地址。localhost 并不總是在本地 DNS 中解析。



查看完整回答
反對 回復(fù) 2021-11-07
?
青春有我

TA貢獻(xiàn)1784條經(jīng)驗 獲得超8個贊

await WindowsIdentity.RunImpersonated(identity.AccessToken, async () =>

{

    //this should give you the impersonated user

    var impersonatedUser = WindowsIdentity.GetCurrent().Name;


    var client = new HttpClient(new HttpClientHandler { UseDefaultCredentials = true });

    var request = new HttpRequestMessage(HttpMethod.Get, url);

    var response = await client.SendAsync(request);

});


查看完整回答
反對 回復(fù) 2021-11-07
  • 3 回答
  • 0 關(guān)注
  • 295 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號