Tag: amazon web services

如何获得发送到移动设备的短信回复?

我正在尝试使用此示例代码使用SNS API发送消息 – BasicAWSCredentials cr = new BasicAWSCredentials(“MYACCESSKEYS”,”mySecretKeys”); AmazonSimpleNotificationService sns = new AmazonSimpleNotificationServiceClient(cr); string topicArn = sns.CreateTopic(new CreateTopicRequest { Name = “ses-bounces-topic”, }).CreateTopicResult.TopicArn; sns.SetTopicAttributes(new SetTopicAttributesRequest { TopicArn = topicArn, AttributeName = “MyName”, AttributeValue = “Sample Notifications” }); sns.Subscribe(new SubscribeRequest { TopicArn = topicArn, Protocol = “SMS”, Endpoint = “my-mobile-number” }); ListSubscriptionsByTopicResult ls = sns.ListSubscriptionsByTopic(new ListSubscriptionsByTopicRequest […]

执行等待异步操作时的AWS Lambda行为?

假设APIGateway触发一个等待10秒的函数(处理程序) public async Task Get(APIGatewayProxyRequest request, ILambdaContext context){ var x = await Wait10Async(); return SomeAPIGatewayProxyResponse; } Q1:当await将控制流返回给函数处理程序本身时,这个容器(执行环境)会发生什么? 显然Lambda在返回到APIGateway之前等待Task完成,但在这10秒内容器(或其他)是否接受并执行更多Get函数? 问题背后的原因是AWS Lambda有1000个并发执行限制,它说每个执行都在不同的容器中运行,因此它让我对这个场景提出质疑: 1 – APIGateway接收1000个同时请求并启动1000个Lambda处理程序,在10秒后完成 在第一次请求之后(在完成之前) 2 – 3秒,另一个让100个请求来到APIGateway。 在这种情况下,所有lambda容器都已耗尽。 这是发生了什么或await有解决这个问题的魔力? 我知道await如何阻止经典视图应用程序中的循环。 但它在Lambda执行环境中的表现如何?

WCF WebInvoke可以接受内容类型:text / plain?

我正在编写WCF REST服务以使用我的WCF REST服务接收AWS SNS通知消息。 但是,WCF REST仅支持XML和JSON,但由于传统原因,Amazon SNS使用Content-Type: text/plain; charset=UTF-8发布其通知Content-Type: text/plain; charset=UTF-8 根据亚马逊文档 , Content-Type: text/plain; charset=UTF-8标头: POST / HTTP/1.1 Content-Type: text/plain; charset=UTF-8 // … { “Type” : “Notification”, // … “UnsubscribeURL” : “https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&…” } 当我使用像Amazon这样的“text / plain”内容类型调用我的服务时,会出现一个错误: 请求错误。 服务器遇到处理请求的错误。 exception消息是’传入消息具有意外的消息格式’Raw’。 该操作的预期消息格式是’Xml’; ‘Json的’。 这可能是因为尚未在绑定上配置WebContentTypeMapper。 有关更多详细信息,请参阅WebContentTypeMapper的文档。 请参阅服务器日志以获取更多详 我目前的代码: public interface MyServiceInterface { [OperationContract] [WebInvoke(Method = “POST”, UriTemplate […]

AWS Lambda和.NET Core – 使用Linux运行时?

我正在编写一个C#(.NET Core)的Alexa技能,可以从AWS Lambda函数(在Amazon Linux上运行)运行。 当我编译项目( dotnet发布 )时,我收到错误: 无法找到与其中一个目标运行时兼容的框架’.NETCoreApp,Version = v1.0’的运行时目标:’win10-x64,win81-x64,win8-x64,win7-x64’。 可能的原因: 项目尚未还原或还原失败 – 运行dotnet还原 该项目未在“运行时”部分列出“win10-x64,win81-x64,win8-x64,win7-x64”之一。 您可能正在尝试发布不受支持的库。 使用dotnet pack分发库。 如果我指定一个Windows运行时(例如win10-x64 ),它将编译正常,但是我的一个依赖项(Google表格API)在运行时由于基于Linux的Lambda而存在问题。 使用Linux运行时(例如debian.8-x64)将导致相同的编译错误。 当自己的平台是Linux时,为什么AWS SDK需要Windows运行时? 我觉得我错过了一些明显的东西,并且当有人将问题指出给我时,我会很高兴地面对掌心。 我的project.json文件(主应用程序和.NET Core类库项目): AlexaProj { “version”: “1.0.0-*”, “buildOptions”: { }, “dependencies”: { “Microsoft.NETCore.App”: “1.1.1”, “Amazon.Lambda.Core”: “1.0.0*”, “Amazon.Lambda.Serialization.Json”: “1.0.1”, “Amazon.Lambda.Tools”: { “type”: “build”, “version”: “1.3.0-preview1” }, “Slight.Alexa.Core”: “1.0.10-beta”, “AlexaProjLib”: “1.0.0-*” }, “tools”: { […]

Docker在VS中运行但在发布到AWS时出错? 错误CS5001:程序不包含适用于入口点的静态“主”方法

我为Visual Studio 2017安装了AWS工具包(V15.7.3),并使用API​​模板和Linux docker支持创建了一个新的空Asp.Net核心2.1项目。 我可以在Visual Studio中运行它。 加载项目后Visual Studio Docker输出 ==========准备容器========== 让Docker容器准备就绪…… docker-compose -f“C:\ work \ Strats \ docker-compose.yml”-f“C:\ work \ Strats \ docker-compose.override.yml”-f“C:\ work \ Strats \ obj \ Docker \ docker-compose.vs.debug.g.yml“-p dockercompose607729401690719332 –no-ansi config 未设置DOCKER_REGISTRY变量。 默认为空字符串。 服务: processfiles: 建立: 上下文:C:\ work \ Strats dockerfile:ProcessFiles / Dockerfile 目标:基地 entrypoint:tail -f / dev / null 环境: […]

在AmazonS3 Bucket内部处理文件夹(c#)

我想将一个文件夹(包含其中的所有现有文件)复制到AmazonS3的同一个Bucket中的另一个文件夹中。 我可以复制一个对象,但我需要的是将包含所有文件的文件夹复制到另一个文件夹中。

Ivona请求签名问题 – 签名不匹配(AWS签名版本4)

我正在尝试基于此documnent实施Ivona请求签名 一切正常,所有结果都与示例值匹配,但签名结果除外。 所以签名的结果是cf1141e33a8fbba23913f8f36f29faa524a57db37690a1b819f43bbeaabf3b76,但在文件中它等于2cdfef28d5c5f6682280600a6141a8940c608cfefacb47f172329cbadb5864cc 是Ivona文件中的错误还是错误? 下面是我使用的C#代码: class Program { static void Main() { try { Console.WriteLine(SendIvonaRequest()); } catch (Exception ex) { Console.WriteLine(ex.Message); } } private static string SendIvonaRequest() { var date = new DateTime(2013, 09, 13, 09, 20, 54, DateTimeKind.Utc); const string algorithm = “AWS4-HMAC-SHA256”; const string regionName = “eu-west-1”; const string serviceName = “tts”; const […]

.NET核心AWS RDS连接

我正在Amazons AWS上创建一个.NET Core Web API,Elastic Beanstalk。 我正在尝试添加数据库,但是他们添加数据库的指南不适用于.Net Core http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_NET.rds.html 它说要使用“ConfigurationManager.AppSettings;”获取相关信息,但这在.NET Core中是不可能的。 有人可以提供一些关于如何获取数据库信息的信息吗? (“RDS_DB_NAME”“RDS_USERNAME”“RDS_PASSWORD”“RDS_HOSTNAME”) 更新我尝试阅读https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration但我还没有解决问题。 我似乎无法从AWS获得值。 它只返回我在自己的appsettings.json中设置的内容。这是我的代码:MyOptions.cs public class MyOptions { public MyOptions() { // Set default value. } public string RDS_HOSTNAME { get; set; } public string RDS_PORT { get; set; } public string RDS_DB_NAME { get; set; } public string RDS_USERNAME { get; set; […]

部署MVC4项目时出错:无法找到文件或程序集

过去,我只是使用Visual Studio 2012“发布到AWS”菜单项来部署我的MVC4网站(到AWS Elastic Beanstalk)。 现在,该程序在本地编译和运行,但无法部署。 从消息中,它似乎正在查找当前正在部署的项目中没有的文件,也不是当前项目的引用。 在某些尝试的部署中,错误是无法找到文件系统和项目中的文件。 VS似乎在错误的位置搜索和不需要的文件。 Commencing deployment for project MyWebApp.UI …building deployment package obj\Debug\Package\Archive… …package build ‘CopyPipelineFiles’: error in ‘C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets’ at (2567,5): Copying file Content\bootstrap-fam-fam\css\fam-icons.css to obj\Debug\Package\PackageTmp\Content\bootstrap-fam-fam\css\fam-icons.css failed. Could not find a part of the path ‘C:\MyWebApp\MyWebApp\MyWebApp.Model.Test\obj\Debug\Package\PackageTmp\Content\bootstrap-fam-fam\css\fam-icons.css’. …build of project archive failed, abandoning deployment Commencing deployment for project MyWebApp.UI […]

有没有办法在“公开可读的存储桶”上使用Amazon .NET AWS SDK的AmazonS3客户端而无需指定AWS凭据?

我想使用Amazon的.NET SDK访问公共可读存储桶,但用于创建AmazonS3的AWSClientFactory.CreateAmazonS3Client方法AmazonS3强制您输入AwsAccessKey和AwsSecretAccessKey。 我不想在客户端应用程序中包含这些,但我仍然希望使用Amazon提供的SDK来访问S3上的这些公共可读对象。 这可能吗?