我正在尝试签署一份请求,但未成功发送给AWS。在网上浏览了几个小时后,我找不到一段可行的代码。
我想在C#中预先签署IoT网址。我在Node中找到了极其简单的代码:
'use strict';
const v4 = require('aws-signature-v4');
const crypto = require('crypto');
exports.handler = (event, context, callback) => {
const url = v4.createPresignedURL(
'GET',
process.env.IOT_ENDPOINT_HOST.toLowerCase(),
'/mqtt',
'iotdevicegateway',
crypto.createHash('sha256').update('', 'utf8').digest('hex'),
{
'key': process.env.IOT_ACCESS_KEY,
'secret': process.env.IOT_SECRET_KEY,
'protocol': 'wss',
'region': process.env.IOT_AWS_REGION,
}
);
const response = {
statusCode: 200,
body: JSON.stringify({ url: url }),
};
callback(null, response);
}
如何在C#中完成?我在SDK上找不到它。我找到的是这种方法:https://github.com/aws/aws-sdk-net/blob/master/sdk/src/Core/Amazon.Runtime/Internal/Auth/AWS4Signer.cs
但它表示它仅供内部使用,不应使用。
关于如何实现它的任何指导?
由于