验证 ASP.Net Core 中 IFormFile 的图像类型

2023-12-19

我有一个 ASP.NET Core 应用程序,我需要验证上传的文件是图像,而不是具有图像扩展名的非图像文件...... 我发现的所有有意义的解决方案都使用 System.Drawing.Image 或 ASP.NET Core 中不可用的类似类。 您能建议一个替代方案吗? *请注意,我不是要检查扩展名,而是要检查内容。

谢谢


现在“System.Drawing.Common”NuGet 可用于.NET Core。

您可以执行以下操作来验证“可能的”图像:

using System.Drawing;
// ...
public bool IsImage(byte[] data)
{
  var dataIsImage = false;
  using (var imageReadStream = new MemoryStream(data))
  {
    try
    {
      using (var possibleImage = Image.FromStream(imageReadStream))
      {
      }
      dataIsImage = true;
    }
    // Here you'd figure specific exception to catch. Do not leave like that.
    catch
    {
      dataIsImage = false;
    }
  }

  return dataIsImage;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

验证 ASP.Net Core 中 IFormFile 的图像类型 的相关文章

  • Environment.CurrentDirectory 与 System.IO.Directory.GetCurrentDirectory

    我正在编写一个 Net WinForms 并不断在调试和发布配置之间切换 并且有一些文件我需要任一配置才能访问 我想做的是将文件放在 BIN 文件夹中的公共目录中 这样它看起来像这样 MyProject Bin CommonFiles My
  • 按扩展名过滤搜索文件返回太多结果

    我正在开发一个 C 控制台应用程序 它必须管理 Windows 操作系统上的文件 我需要获取具有特定扩展名的文件名 列表 我找到了很多解决方案 最建议的是以下一种 HANDLE hFind WIN32 FIND DATA data hFin
  • 现代 C++ 编译器是否能够在某些情况下避免调用 const 函数两次?

    例如 如果我有以下代码 class SomeDataProcessor public bool calc const SomeData d1 const SomeData d2 const private Some non mutable
  • MVC3中设置下拉列表中的所选项目

    我必须为视图中的下拉列表设置所选项目 但它不起作用 View div class editor label Html LabelFor model gt model Gender div div class editor field Htm
  • 未找到 Boost 库,但编译正常

    我正在尝试在 C 中使用 boost 的文件系统 使用时看起来编译没问题 c c Analyse c o Analyse o g W Wall L usr local lib lboost filesystem lboost system
  • 从复选框列表中选择循环生成的复选框中的一个复选框

    抱歉我的英语不好 在我的 ASP NET 网站上 我从 SQL 表导入软件列表 看起来像这样 但实际上要长得多 Microsoft Application Error Reporting br br Microsoft Applicatio
  • 当事件button.click发生时,如何获取按钮名称/标签?

    我以编程方式制作按钮并将它们添加到堆栈面板中 以便每次用户导航到页面时按钮都会发生变化 我正在尝试做这样的事情 当我单击创建的按钮时 它将获取按钮的标签并转到正确的页面 但是 我无法使用 RoutedEventHandler 访问按钮元素
  • 传递 constexpr 对象

    我决定给予新的C 14的定义constexpr旋转并充分利用它 我决定编写一个小的编译时字符串解析器 然而 我正在努力保持我的对象constexpr将其传递给函数时 考虑以下代码 include
  • java中如何重新初始化int数组

    class PassingRefByVal static void Change int pArray pArray 0 888 This change affects the original element pArray new int
  • 有些有助于理解“产量”

    在我不断追求少吸的过程中 我试图理解 产量 的说法 但我不断遇到同样的错误 someMethod 的主体不能是迭代器块 因为 System Collections Generic List 不是迭代器接口类型 这是我被卡住的代码 forea
  • extern 声明和函数定义都在同一文件中

    我只是浏览了一下gcc源文件 在gcc c 我发现了类似的东西 extern int main int char int main int argc char argv 现在我的疑问是extern是告诉编译器特定的函数不在这个文件中 但可以
  • 获取没有显式特征的整数模板参数的有符号/无符号变体

    我希望定义一个模板类 其模板参数始终是整数类型 该类将包含两个成员 其中之一是类型T 另一个作为类型的无符号变体T 即如果T int then T Unsigned unsigned int 我的第一直觉是这样做 template
  • 从 C# 使用 Odbc 调用 Oracle 包函数

    我在 Oracle 包中定义了一个函数 CREATE OR REPLACE PACKAGE BODY TESTUSER TESTPKG as FUNCTION testfunc n IN NUMBER RETURN NUMBER as be
  • 如果输入被重定向则执行操作

    我想知道如果我的输入被重定向 我应该如何在 C 程序中执行操作 例如 假设我有已编译的程序 prog 并且我将输入 input txt 重定向到它 我这样做 prog lt input txt 我如何在代码中检测到这一点 一般来说 您无法判
  • 不可变类与结构

    以下是类与 C 中的结构的唯一区别 如果我错了 请纠正我 类变量是引用 而结构变量是值 因此在赋值和参数传递中复制结构的整个值 类变量是存储在堆栈上的指针 指向堆上的内存 而结构变量作为值存储在堆上 假设我有一个不可变的结构 该结构的字段一
  • 模板外部链接?谁能解释一下吗?

    模板名称具有链接 3 5 非成员函数模板可以有内部链接 任何其他模板名称应具有外部链接 从具有内部链接的模板生成的实体与在其他翻译单元中生成的所有实体不同 我知道使用关键字的外部链接 extern C EX extern C templat
  • C++ - 多维数组

    处理多维数组时 是否可以为数组分配两种不同的变量类型 例如你有数组int example i j 有可能吗i and j是两种完全不同的变量类型 例如 int 和 string 听起来您正在寻找 std vector
  • 模板类的模板构造函数的 C++ 显式模板特化

    我有一个像这样的课程 template
  • C++:二叉树所有节点值的总和

    我正在准备面试 我被一个二叉树问题困住了 我们如何计算二叉树所有节点中存在的值的总和 优雅的递归解决方案 伪代码 def sum node if node NULL return 0 return node gt value sum nod
  • EntityFramework 6.0.0.0 读取数据,但不插入

    我创建了一个基于服务的数据库 folderName gt Add New Item gt Data gt Service based Database文件到 WPF 应用程序中 然后我用过Database First方法并创建了Person

随机推荐

  • java小程序中的淡入淡出效果

    我正在用节点和边制作这个java小程序图形 我想实现点击一个节点时检索新节点的淡入和淡出效果 但我不知道如何编写和实现代码 为了澄清 例如动物节点检索老虎和狮子节点 因此 当单击动物时 节点和附着在其上的边缘逐渐消失 老虎和狮子节点逐渐出现
  • 如何将日期范围选择器与ajax一起使用

    我正在使用日期范围选择器 javascript 库来选择用户的日期范围 date range daterangepicker arrows true dateFormat d M yy rangeSplitter to datepicker
  • Phonegap Windows Phone 7 使用 jQuery 动态 HTML 加载和跨域调用

    好吧 我搜索了很多 发现很多 Android 开发者都使用 Phonegap 有几个问题 如何使用 jQuery 将本地 HTML 文件加载到 Phonegap 中的 div 中 就像是 contentDiv load url functi
  • Openlayers v4.0.1 支持 Google 地图 Javascript API 吗?

    我想知道 Openlayers 的最新版本 v4 0 1 是否支持 Google 地图作为图块图层 我找不到任何关于此的文档 如果 Openlayers 不支持 Google 地图 有人可以告诉我是否有任何方法可以做到这一点 OpenLay
  • 如何在 F# 或任何函数式语言中柯里化第二个(或第三个、第四个……)参数?

    我刚刚开始使用 F 看看如何使用柯里化将第一个参数预加载到函数中 但是如何使用第二个 第三个或任何其他参数来做到这一点呢 命名参数会让这变得更容易吗 是否有任何其他函数式语言具有命名参数或其他方式使柯里化与参数顺序无关 通常你只使用 lam
  • jQuery ajax() URL 是必需的吗?

    the ajax函数的 http api jquery com jQuery ajax jQuery ajax url settings标题是 jQuery ajax url settings 文档说 URL 是必需的 为什么在示例中只提供
  • 如何清除图表 tkinter

    有了这段代码 我想制作动态图 我想让我的图每 60 秒清晰一次 但我不能让它与 cla 和 clf 一起工作 有什么问题吗 除了使用 cla 和 clf 之外 还有其他方法可以清除图形吗 import lib client paho mqt
  • 数组和对象中的尾随逗号是规范的一部分吗?

    尾随逗号是 JavaScript 中的标准吗 还是大多数浏览器 例如 Chrome 和 Firefox 都容忍它们 我以为它们是标准的 但 IE8 遇到一个就吐了 当然 IE 不支持某些东西并不意味着它不标准 这是我的意思的一个例子 在 b
  • 即使 png 文件位于资源文件夹中,NSImage 也会返回 nil

    我正在尝试使用 NSImage imageNamed 方法加载图像 但没有成功 我已将图像复制到项目文件夹 项目 gt 资源中 并使用以下命令添加到项目中 将文件添加到项目 NSImage image NSImage imageNamed
  • jquery定时改变item类

    是否可以根据某种类型的计时器更改项目类别或 ID 每隔 1500 毫秒 它会转到嘿 那里 1 然后 1500 毫秒后 嘿 那里 2 等等 我可以控制它经历多少个间隔 嘿 嘿 那里 1 嘿 那里 2 嘿 那里 3 回到开头 嘿那里 etc T
  • 用弹簧配置流口水。 xsd 错误

    我正在尝试使用 Drools 创建 spring roo 应用程序 但我在 applicationContext xml 中遇到了错误 Error 在这一行找到多个注释 无法找到模式命名空间 http drools org schema 的
  • 相机意图仅在某些设备上返回 null

    我正在使用相机捕获图像并将返回的位图设置为图像视图 但它在 OnePlus 设备上崩溃 我检查了一些 htc 设备 它运行良好 我检查了解决方案 他们说要检查请求代码 但我已经在这样做了 这里可能有什么问题 这是代码 imageView s
  • `modularity()` 的正确使用和解释

    In the igraph modularity部分有示例代码 如下所示 g lt graph full 5 du graph full 5 du graph full 5 g lt add edges g c 1 6 1 11 6 11
  • 使用 Splinter 发送密钥

    我想使用 Splinter 测试自动完成框 我需要将 向下 和 输入 键发送到浏览器 但我在执行此操作时遇到了困难 我目前正在找到一个输入框并成功在该框中输入 tes context browser find by xpath some x
  • 链接自注册的抽象工厂

    我一直在使用和测试一个基于此处描述的自注册抽象工厂 https stackoverflow com a 582456 https stackoverflow com a 582456 在我所有的测试用例中 它就像一个魅力 并提供了我想要的功
  • 如何在我自己的高阶组件 (HOC) 中使用 React Router 的 withRouter HOC?

    我有一个更高阶的组件 它使用location searchReact Router 提供的 prop 用来构造一个queryParams对象并将其作为 prop 传递给其包装的组件 function withQueryParams Wrap
  • 为什么这个简短的 php 脚本不发送电子邮件?

    我似乎无法让我的 php 脚本发送电子邮件 首先 我在php ini文件中设置了邮件功能设置 如下所示 我在 Outlook 上检查了我的电子邮件帐户设置 它不需要身份验证 端口为 25 加密连接类型为 自动 鉴于此 我相应地配置了我的 p
  • Xcode A+ 源代码控制符号

    我刚刚注意到 XCode 显示与源代码管理相关的 A 符号 这是什么意思 A 代表移动文件 重命名被视为移动 所有功劳都归功于用户2129800 他的答案在问题下的评论中
  • 将 WPF 应用程序重写到 Surface

    我正在开发一个 WPF 应用程序 我很好奇如果有一天我们想通过多点触控来控制它 需要什么才能将该应用程序重写为 Surface 应用程序 我们是否可以重用 WPF 应用程序的大部分内容并将其顺利转移到 Surface 或者 Surface
  • 验证 ASP.Net Core 中 IFormFile 的图像类型

    我有一个 ASP NET Core 应用程序 我需要验证上传的文件是图像 而不是具有图像扩展名的非图像文件 我发现的所有有意义的解决方案都使用 System Drawing Image 或 ASP NET Core 中不可用的类似类 您能建