我试图建立一个TypeScript项目并在Visual Studio Code中与Popper,jQuery和Knockout一起使用bootstrap 4 。
我安装了剔除,jquery和bootstrap类型定义,
npm install -–save @types/knockout
npm install -–save @types/jquery
npm install --save @types/bootstrap
Run Code Online (Sandbox Code Playgroud)
在require.js配置中引用了JS文件
declare var require: any;
require.config({
paths: {
"knockout": "externals/knockout-3.5.0",
"jquery": "externals/jquery-3.3.1.min",
"popper.js": "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js",
"bootstrap": "https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
}
})
Run Code Online (Sandbox Code Playgroud)
我的tsconfig.json是这样的:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"*": ["types/*"]
},
"outDir": "./built/",
"sourceMap": true,
"noImplicitAny": true,
"module": "amd",
"target": "es5"
},
"files":[
"src/require-config.ts",
"src/hello.ts"
]
}
Run Code Online (Sandbox Code Playgroud)
我去编译该项目,但出现以下错误:
node_modules/@types/bootstrap/index.d.ts:9:25 - error TS2307: Cannot find module 'popper.js'. …Run Code Online (Sandbox Code Playgroud) compiler-errors typescript bootstrap-4 type-definition popper.js
我有一个 ASP.NET Core 3.0 Web API 端点,我已将其设置为允许我发布大型音频文件。我已按照 MS 文档中的以下说明设置端点。
当音频文件上传到终结点时,它会流式传输到 Azure Blob 存储容器。
我的代码在本地按预期工作。
当我在 Linux 上的 Azure 应用服务中将它推送到我的生产服务器时,代码不起作用并且出现错误
请求管道中未处理的异常:System.Net.Http.HttpRequestException:发送请求时发生错误。---> Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException:请求主体太大。
根据上述文章的建议,我使用以下内容配置了增量更新的 Kesterl:
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseKestrel((ctx, options) =>
{
var config = ctx.Configuration;
options.Limits.MaxRequestBodySize = 6000000000;
options.Limits.MinRequestBodyDataRate =
new MinDataRate(bytesPerSecond: 100,
gracePeriod: TimeSpan.FromSeconds(10));
options.Limits.MinResponseDataRate =
new MinDataRate(bytesPerSecond: 100,
gracePeriod: TimeSpan.FromSeconds(10));
options.Limits.RequestHeadersTimeout =
TimeSpan.FromMinutes(2);
}).UseStartup<Startup>();
Run Code Online (Sandbox Code Playgroud)
还配置了 FormOptions 以接受最多 6000000000 个文件
services.Configure<FormOptions>(options =>
{
options.MultipartBodyLengthLimit = 6000000000;
});
Run Code Online (Sandbox Code Playgroud)
根据文章中的建议,还设置具有以下属性的 API 控制器
[HttpPost("audio", Name="UploadAudio")]
[DisableFormValueModelBinding]
[GenerateAntiforgeryTokenCookie]
[RequestSizeLimit(6000000000)]
[RequestFormLimits(MultipartBodyLengthLimit = 6000000000)]
Run Code Online (Sandbox Code Playgroud)
最后,这是动作本身。这个巨大的代码块并不表示我希望如何编写代码,但作为调试练习的一部分,我已将其合并到一个方法中。 …