初始化
This commit is contained in:
94
MQTTServerSideAPI/Controllers/DevicesController.cs
Normal file
94
MQTTServerSideAPI/Controllers/DevicesController.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using TencentCloud.Common;
|
||||
using TencentCloud.Common.Profile;
|
||||
using TencentCloud.Iotcloud.V20210408;
|
||||
using TencentCloud.Iotcloud.V20210408.Models;
|
||||
|
||||
namespace MQTTServerSideAPI.Controllers
|
||||
{
|
||||
public class DevicesController : ApiController
|
||||
{
|
||||
// GET api/<controller>
|
||||
public IEnumerable<string> Get()
|
||||
{
|
||||
return new string[] { "value1", "value2" };
|
||||
}
|
||||
|
||||
// GET api/<controller>/5
|
||||
public string Get(string productid)
|
||||
{
|
||||
string strProductId = productid;
|
||||
|
||||
string retString = "";
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
// 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
|
||||
// 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
|
||||
// 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
|
||||
Credential cred = new Credential
|
||||
{
|
||||
SecretId = "AKIDKhz84sbEqFPRK1Uo0zUnwwjNp4884vc4",
|
||||
SecretKey = "JQ8qZGxgQAtbCfvxb7VqzxujOtFVb1KT"
|
||||
};
|
||||
// 实例化一个client选项,可选的,没有特殊需求可以跳过
|
||||
ClientProfile clientProfile = new ClientProfile();
|
||||
// 实例化一个http选项,可选的,没有特殊需求可以跳过
|
||||
HttpProfile httpProfile = new HttpProfile();
|
||||
httpProfile.Endpoint = ("iotcloud.tencentcloudapi.com");
|
||||
clientProfile.HttpProfile = httpProfile;
|
||||
|
||||
// 实例化要请求产品的client对象,clientProfile是可选的
|
||||
IotcloudClient client = new IotcloudClient(cred, "ap-guangzhou", clientProfile);
|
||||
|
||||
// 实例化一个请求对象,每个接口都会对应一个request对象
|
||||
DescribeDevicesRequest req = new DescribeDevicesRequest();
|
||||
req.ProductId = "HICL5RNXAU"; //strProductId
|
||||
req.Offset = 0;
|
||||
req.Limit = 250;
|
||||
|
||||
Logger.LogDownSide(String.Format("Send request: req.ProductId:{0}, req.Offset:{1}, req.Limit:{2}",
|
||||
req.ProductId,
|
||||
req.Offset,
|
||||
req.Limit
|
||||
));
|
||||
|
||||
// 返回的resp是一个DescribeDevicesResponse的实例,与请求对象对应
|
||||
DescribeDevicesResponse resp = client.DescribeDevicesSync(req);
|
||||
// 输出json格式的字符串回包
|
||||
retString = AbstractModel.ToJsonString(resp);
|
||||
|
||||
Logger.LogDownSide("Success return !! " + retString);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
if (e.InnerException != null)
|
||||
retString = "Error " + e.InnerException.ToString();
|
||||
Logger.LogDownSide("Failed exception !! " + e.ToString());
|
||||
}
|
||||
|
||||
return retString;
|
||||
}
|
||||
|
||||
// POST api/<controller>
|
||||
public void Post([FromBody] string value)
|
||||
{
|
||||
}
|
||||
|
||||
// PUT api/<controller>/5
|
||||
public void Put(int id, [FromBody] string value)
|
||||
{
|
||||
}
|
||||
|
||||
// DELETE api/<controller>/5
|
||||
public void Delete(int id)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user