都来讨论下,新发现的问题

沃尔沃 2011-08-22 05:14:37

string fileContentType = FileUploadId.PostedFile.ContentType; //控件文件类型获取
if (fileContentType != "image/bmp" && fileContentType != "image/gif" && fileContentType != "image/jpeg")
{
ReturnContents = "Error:文件类型不符";
return ReturnContents;
}


这是判断上传文件类型的语句8月22日之前用起来完全没有问题。
无意中上传jpg文件突然出现Error:文件类型不符。

结果输出获取的文件类型发现jpg 的mime变成了image/pjpeg

这是怎么回事谁知道 虽然现在IF语句里面加上了image/pjpeg 解决了此问题但是我很疑惑之前为什么没有问题偏偏今天突然出现了这个问题。

说明:我没有更新.net版本和浏览器
...全文
83 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-08-22
  • 打赏
  • 举报
回复
直接取后缀名 判断后缀名啊。
string type2 = name.Substring(name.LastIndexOf(".") + 1);
if (type2 == "jpg" && type2 == "gif" && type2 == "bmp" && type2 == "png")
woshimaikou 2011-08-22
  • 打赏
  • 举报
回复
直接用扩展名判断
huangwenquan123 2011-08-22
  • 打赏
  • 举报
回复
不同浏览器会显示不一样。在ff chrome中不会这样。
你可以通过判断它的后缀名Path.GetExtension(FileUpload1.FileName)
或者安全点取得文件头进行判断。
沈勇 2011-08-22
  • 打赏
  • 举报
回复
有的jpg文件都是变成pjpeg吗
md5e 2011-08-22
  • 打赏
  • 举报
回复
只用判断是否为"image"就够了
sugercgq 2011-08-22
  • 打赏
  • 举报
回复
image/gif
image/bmp

image/pjpeg //ie
image/x-png //ie
image/jpeg //google,ff
image/png //google,ff


sugercgq 2011-08-22
  • 打赏
  • 举报
回复
不同浏览器有不同结果
LMAOhuaNL 2011-08-22
  • 打赏
  • 举报
回复
一个神奇的错误
你做一个else的判断看看
沃尔沃 2011-08-22
  • 打赏
  • 举报
回复
同样的文件。以前正常传过的也变pjpeg。 ~很疑惑
js_csharp 2011-08-22
  • 打赏
  • 举报
回复
所有的jpg文件都是变成pjpeg吗
呆子罗 2011-08-22
  • 打赏
  • 举报
回复
s你获取文件扩展名不好吗?
沃尔沃 2011-08-22
  • 打赏
  • 举报
回复
哪怕从我用的第一天开始这样也行啊。 半中腰突然变了。 我昨天晚上都怀疑是不是编译器BUG了。实在没有怀疑对象了。 最后输出mime 才知道变成了pjpeg

还有就是之前我本地出这个问题时 我把编译好的传服务器不存在任何问题。但是几个小时以后服务器上也一样了。
DLL覆盖当然是即时生效啊。也不存在反应时间。
CalvinR 2011-08-22
  • 打赏
  • 举报
回复
神器的错误!!????
沃尔沃 2011-08-22
  • 打赏
  • 举报
回复
浏览气不变
电脑上装的IE9和chrome之前都没问题
传的同样的图片怎么突然变了

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧