在允许某些 Web API 端点受到攻击之前,我想简单地检查在授权标头中发送的 Api 密钥。为了这个问题,我们假设 ApiKey 是12345
. 我只想在到达特定操作方法之前检查此 Api Key 的值。我不知道这是否需要自定义 AuthorizeAttribute 或操作过滤器。
authorization authorize-attribute asp.net-core asp.net-core-webapi asp.net-core-2.1
是否可以在操作中发布 IFormCollection 和 Object?
public Task CreateEMail(IFormCollection collection, [FromBody] Model model)
Run Code Online (Sandbox Code Playgroud)
我尝试从 Angular 向 WebAPI 发出发布请求,该请求是上传文件和模型的组合。
角度代码:
let model = {title:'test', subject:'test'};
let formData = new FormData();
for (let i = 0; i < this.droppedFilesData.length; i++) {
let file = this.droppedFilesData[i];
let fileName = file.name;
formData.append(fileName, file);
}
this.service.createEmail(formData, model); // how to implement to post formData and model
Run Code Online (Sandbox Code Playgroud)
网页API代码:
public Task CreateEMail(IFormCollection collection, [FromBody] Model model)
{
...
}
Run Code Online (Sandbox Code Playgroud)
我如何实现这个 WebAPI?
更新:我正在考虑将所有内容添加到 FormCollection 中,但这将是解析数据的非常糟糕的代码
c# asp.net-web-api angularjs asp.net-core asp.net-core-webapi