我有一个ASP。使用Docker托管在Amazon AWS Elastic Beanstalk中的NET Core v.3.0 web应用程序。该应用程序在运行64位Amazon Linux(v2.16.11)的Docker中运行良好。当我更新到运行64位Amazon Linux 2(v3.4.12)的Docker时,请求工作正常,但AJAX请求失败,状态代码错误为400“Bad request”。源代码、dockerfile等没有任何其他更改。只有Linux版本从Amazon Linux更改为Amazon Linux 2。有人知道Amazon Linux 1和Amazon Linux 2之间有什么不同,这可能是导致AJAX请求失败的原因吗?
更多信息:
亚马逊Linux 1:{IP}-[2022年4月10日:07:36:01 0000]“POST{url}HTTP/1.1”200 3882“{url2}”Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/100.0.4896.75 Safari/537.36“{IP2}”
AmazonLinux2:{IP} - - [10/Apr/2022:07:00:14 0000]"POST{url}HTTP/1.1"400 0"{url2}""Mozilla/5.0(Windows NT 10.0; Win64; x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/100.0.4896.75Safari /537.36"{IP2}"
使用jQuery 3.4.1进行调用:
var $form = $("#inputForm");
if ($form.length <= 0) return;
var data = $form.serialize();
$.ajax({
url: "...",
type: "POST",
data: data,
error: function (jqXHR, textStatus, errorThrown) {
alert("There was an error when loading the results (error type = " + errorThrown + ").");
},
success: function (result) {
$("#calculationTarget").html(result)
});
有一个非常简单的修复程序,它正在更新到ASP. NET Core 3.1
。
在此版本中,您的问题已修复。
有关更新,请参阅以下步骤。
>
如果您有一个global.json
文件来定位特定的. NET Core SDK
版本,请更新version属性。
{
"sdk": {
"vershtml" target="_blank">ion": "3.1.101"
}
}
如下所述,将TFM更新为netcoreapp3.1。
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
您需要更新包引用。要执行此操作,请更新每个Microsoft。AspNetCore* (*表示通配符)到3.1.0(或任何更高版本)。
如果您使用的是Docker(我认为您是),那么您需要使用ASP. NET Core 3.1
基础映像。请参阅下面的示例。
$ docker pull mcr.microsoft.com/dotnet/aspnet:3.1
有关其他步骤和信息,请参阅从迁移到ASP的官方指南。NET Core 3.1。
总之,将当前应用程序升级到ASP。NET Core 3.1应该可以解决您的问题。
如果项目是从ASP更新的,则此问题不再存在。NET Core 3.0到ASP。NET Core 3.1。
亚马逊云 图 1.20.2.1 - AWS AWS,即 Amazon Web Services,是亚马逊(Amazon)公司的 IaaS 和 PaaS 平台服务。AWS 提供了一整套基础设施和应用程序服务,使用户几乎能够在云中运行一切应用程序:从企业应用程序和大数据项目,到社交游戏和移动应用程序。AWS 面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,能够帮助企业降低 IT
我想问alexa各种各样的问题,最后我想让它问“你还有什么想知道的吗?”当我说“是”(yes是工作建议)时,它应该根据我的意图来建议我。就像我在
我刚刚开始使用AWS EC2。我明白EC2就像一台远程计算机,在那里我可以做几乎所有我想做的事情。然后我发现了ECS的事。我知道它使用Docker,但我对这两者之间的关系感到困惑。 ECS只是EC2中的Docker安装吗?如果我已经有一个EC2并且我启动了一个ECS,这是否意味着我有两个实例?
我能够从EC2实例连接到VPC中的ElastiCache Redis实例。但我想知道是否有办法连接到Amazon EC2实例之外的ElastiCache Redis节点,例如从我的本地开发设置或其他供应商提供的VPS实例。 当前在我的本地设置中尝试时: 我只在一段时间后才会暂停。
但有些多重问题, 如何在.NET中对Amazon Cognito用户池执行身份验证。我以以下方式启动Auth: 他们的文档非常非常糟糕,当我想回应挑战时,我似乎找不到该通过什么。 我假设它只是用默认的JWT中间件配置OWIN,还是应该期待其他东西?
我们正在开发一个系统,我们需要向数千部手机发送推送通知。我们使用Amazon SNS进行了设置。我们将向每部手机发送单独的消息,因此我们直接发送到SNSendpointARN,而不是主题ARN。 我们目前正在想这个系统的性能。我在网上找不到任何关于可以向SNS发送多少消息的内容。例如,如果我需要向25000个SNSendpoint发送25000条消息,我可以以多快的速度发送它们?秒、分钟、小时?