阿里云微服务消息队列Token C# Code Sample

简介: 文本主要演示使用C# SDK调用 ApplyToken 创建临时访问 Token。

Step By Step

1、API请求参数解释说明

2、Nuget安装SDK:aliyun-net-sdk-onsmqtt
图片.png

3、Code Sample

using System;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Exceptions;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.OnsMqtt.Model.V20200420;

namespace MQTTForIoT
{
    class Program
    {
        static void Main(string[] args)
        {
            // 公网区域实例测试  https://developer.aliyun.com/article/693979?spm=a2c6h.13262185.0.0.15ba5eb5T92u4V
            IClientProfile profile = DefaultProfile.GetProfile("mq-internet-access", "LTAIOZZg********", "v7CjUJCMk7j9aK****************");
            DefaultAcsClient client = new DefaultAcsClient(profile);

            var request = new ApplyTokenRequest();
            request.Resources = "<parent_topic>/#";
            request.InstanceId = "post-cn-6ja********";
            // 当前时间 + 30分钟
            long expireTime = ((DateTime.Now.AddMinutes(30).Ticks - TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)).Ticks) / 10000);
            request.ExpireTime = expireTime;
            request.Actions = "R,W";
            Console.WriteLine("expireTime: " + expireTime);
            try
            {
                var response = client.GetAcsResponse(request);
                Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content));
                Console.ReadKey();
            }
            catch (ServerException e)
            {
                Console.WriteLine(e);
            }
            catch (ClientException e)
            {
                Console.WriteLine(e);
            }
        }
    }
}

4、The Result

expireTime: 1603198649047
{"RequestId":"D03E4AEC-3628-4050-A9EA-4CFF111111AF","Token":"1111+XLFl5s/YWJ/MlDz4t/Lq5HC11111128HAMaxYzmBSHQsWXgdISJ1ZJ+2cxaqqEoGlfCn2imhZ4FoNx3kipRDnjsfBujbJGYgJWUr5piesdvDY0i8fNY68mR3UqN9LKVT5IGzKPvooOIjF1CZZ9uU74CT40m4bkmcftVUBP5SM+VepMKCyQgoJWL8b3AQUS1QPxDA2oGf+JBKuN0DyYW6d7mIYhAqXTpVbQw5nNCvKP80Xo0WYK9UHMgTMh9qdrn6MS1rwaP765dpXzvgHC9nWeHX7K80O6vtOU9M8Qn5VrhkP0F1umbOoYs3NfM+WYZIQx4pkViQo6qqkxgbD7le+3be3pC6mQHEsLVxniQFOoUUHHfSw=="}

更多参考

阿里云微服务消息队列Token Java Code Sample
阿里云常见参数获取位置

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
8月前
|
消息中间件 测试技术 数据库
消息队列和应用工具产品体系-微服务架构引发的问题
消息队列和应用工具产品体系-微服务架构引发的问题
66 0
消息队列和应用工具产品体系-微服务架构引发的问题
|
1月前
|
消息中间件 人工智能 监控
|
2月前
|
消息中间件 缓存 API
|
4月前
|
消息中间件 BI Serverless
消息队列推出serverless版、Quick BI升级至5.0……阿里云近期产品动态汇总
消息队列推出serverless版、Quick BI升级至5.0……阿里云近期产品动态汇总
481 1
|
6月前
|
消息中间件 微服务
微服务轮子项目(31) -消息队列对比参照表
微服务轮子项目(31) -消息队列对比参照表
26 0
|
6月前
|
消息中间件 存储 Go
Golang微服务框架Kratos应用NSQ消息队列
NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,由bitly公司开源出来的一款简单易用的消息中间件。 NSQ可用于大规模系统中的实时消息服务,并且每天能够处理数亿级别的消息,其设计目标是为在分布式环境下运行的去中心化服务提供一个强大的基础架构。 NSQ具有分布式、去中心化的拓扑结构,该结构具有无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征。NSQ非常容易配置和部署,且具有最大的灵活性,支持众多消息协议。
49 1
|
6月前
|
消息中间件 存储 中间件
Golang微服务框架Kratos应用RabbitMQ消息队列
RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成。
90 1
|
8月前
|
消息中间件 缓存 大数据
消息队列和应用工具产品体系-阿里云消息队列产品简介
消息队列和应用工具产品体系-阿里云消息队列产品简介
1106 1
消息队列和应用工具产品体系-阿里云消息队列产品简介
|
9月前
|
云安全 API
阿里云安全的API返回code为200
阿里云安全的API返回code为200
861 1