续控制台

Posted fger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了续控制台相关的知识,希望对你有一定的参考价值。

一、控制台(控制台问题,保证控制台不自动退出就行)

技术图片

解决方案

        static void Main(string[] args)
        
            Console.WriteLine("确定三个项目都已经启动");
            Console.Read();
            Console.WriteLine("按任意键开始运行");
            Task.Run(async () =>
            
                // discover endpoints from metadata
                var client = new HttpClient();
                var disco = await client.GetDiscoveryDocumentAsync("http://localhost:5000");
                if (disco.IsError)
                
                    Console.WriteLine(disco.Error);
                    return;
                

            );
            Console.ReadLine();
            Console.ReadKey(false);//因为控制台会关闭,设置不关闭     
        

 

二、查看调试的

 技术图片

换种方式执行

        static void Main(string[] args)
        
            Console.WriteLine("确定三个项目都已经启动");
            Console.Read();
            Console.WriteLine("按任意键开始运行");
            // discover endpoints from metadata
            var client = new HttpClient();
            var disco = client.GetDiscoveryDocumentAsync("http://localhost:5000").ConfigureAwait(false).GetAwaiter().GetResult();
            if (disco.IsError)
            
                Console.WriteLine(disco.Error);
                return;
            
            Console.ReadKey(false);//因为控制台会关闭,设置不关闭     
        

技术图片

 

继续获取token请求api

技术图片

        static void Main(string[] args)
        
            Console.WriteLine("确定三个项目都已经启动");
            Console.Read();
            Console.WriteLine("按任意键开始运行");
            // discover endpoints from metadata
            var client = new HttpClient();
            var disco = client.GetDiscoveryDocumentAsync("http://localhost:5000").ConfigureAwait(false).GetAwaiter().GetResult();
            if (disco.IsError)
            
                Console.WriteLine(disco.Error);
                return;
            
            // request token
            var tokenResponse = client.RequestClientCredentialsTokenAsync(new ClientCredentialsTokenRequest
            
                Address = disco.TokenEndpoint,

                ClientId = "socialnetwork",
                ClientSecret = "secret",
                Scope = "socialnetwork"
            ).ConfigureAwait(false).GetAwaiter().GetResult();
            // call api
            client.SetBearerToken(tokenResponse.AccessToken);
            var response = client.GetAsync("http://localhost:5001/identity").ConfigureAwait(false).GetAwaiter().GetResult();
            if (!response.IsSuccessStatusCode)
            
                Console.WriteLine(response.StatusCode);
            
            else
            
                var content =  response.Content.ReadAsStringAsync().ConfigureAwait(false).GetAwaiter().GetResult();
                Console.WriteLine(JArray.Parse(content));
            
            Console.ReadKey(false);//因为控制台会关闭,设置不关闭     
        

 

说明和使用场景(场景为-某个App获取数据比如软件Aajax 请求后台数据,它是直接后台请求(应用程序A的用户名和密码获取token)才可以拿到应用程序A的数据)

技术图片

 客户端==应用程序的身份标识-》是否可以访问

技术图片

 

以上是关于续控制台的主要内容,如果未能解决你的问题,请参考以下文章

GoDaddy SSL证书延期续费

iptables 完成联网控制 (续) ,独立native进程监听。

ASP.NET Core使用功能开关控制路由访问(续)

基于ZYNQ移动机器人控制器设计控制器硬件方案选型(续)

java 文件下载,支持任务暂停,恢复,断点续传;任务状态查询;任务并发控制

ASP.NET Core使用功能开关控制路由访问(续)#yyds干货盘点#