急!ajax在本地运行良好,发布到IIS上就失效了,在线等

sxiaohui8709253 2009-12-18 02:22:50
我是菜鸟,也没啥分谢谢各位大神,由衷感谢各位了,以下贴出代码,谢谢大家了

function CheckTeaMemPhoto()
{
var objFile=document.getElementById("fileTeaMemPhoto");
var filePath=objFile.value;
var index=filePath.lastIndexOf(".");
var fileType=filePath.substring(index+1,filePath.length);


if(!(fileType=="jpg"||fileType=="jpeg"||fileType=="png"||fileType=="bmp"||fileType=="gif"||fileType=="ico"))
{
document.getElementById("spanImgTeaMemPhoto").innerHTML="<img src=image/imgFalse.gif>";
document.getElementById("spanTeaMemPhoto").innerHTML="<p style=color:red;font-size:12px>图片格式不正确</p>";
}
else
{
CheckTeaMemPhotoSize();
}
}

var xmlHttp;
function createXMLHttpRequest()
{
if(window.ActiveXObject)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
}

function CheckTeaMemPhotoSize()
{

createXMLHttpRequest();
var url="CheckImgSize.ashx?filePath="+escape(document.getElementById("fileTeaMemPhoto").value);
alert(document.getElementById("fileTeaMemPhoto").value)
xmlHttp.open("Get",url,true);
xmlHttp.onreadystatechange=CheckTeaMemPhotoResult;
xmlHttp.send(null);
}

function CheckTeaMemPhotoResult()
{
alert("xmlHttp.readyState:"+xmlHttp.readyState)
if(xmlHttp.readyState==4)
{ alert("xmlHttp.status:"+xmlHttp.status)
if(xmlHttp.status==200)
{
if(xmlHttp.responseText=="bigger than max")
{
alert(xmlHttp.responseText);
document.getElementById("spanImgTeaMemPhoto").innerHTML="<img src=image/imgFalse.gif>";
document.getElementById("spanTeaMemPhoto").innerHTML="<p style=color:red;font-size:12px>图片超过500KB</p>";
}
if(xmlHttp.responseText=="photo not exist or damaged")
{
document.getElementById("spanImgTeaMemPhoto").innerHTML="<img src=image/imgFalse.gif>";
document.getElementById("spanTeaMemPhoto").innerHTML="<p style=color:red;font-size:12px>图片不存在或者不可用</p>";
}
if(xmlHttp.responseText=="ok")
{
ShowTeaMemPhoto();
document.getElementById("spanImgTeaMemPhoto").innerHTML="<img src=image/imgTrue.gif>";
document.getElementById("spanTeaMemPhoto").innerHTML="";
}
}
}
}

以下是处理页面CheckImgSize.ashx:
<%@ WebHandler Language="C#" Class="CheckImgSize" %>

using System;
using System.Web;
using System.IO;

public class CheckImgSize : IHttpHandler {

public void ProcessRequest (HttpContext context) {
string res = "";
context.Response.ContentType = "text/plain";
string filePath =context.Server.UrlDecode(context.Request.QueryString["filePath"].ToString());
FileInfo objFile = new FileInfo(filePath);
long size = Convert.ToInt64(System.Configuration.ConfigurationManager.AppSettings["ImgMaxSize"]);
if (objFile.Length < 0 || objFile.Length == 0)
{
res = "photo not exist or damaged";
}
else if (objFile.Length > size)
{
res = "bigger than max";
}
else if (objFile.Length > 0 && objFile.Length < size)
{
res = "ok";
}
context.Response.Write(res);
}

public bool IsReusable {
get {
return false;
}
}

}

在此谢谢大家了
...全文
238 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxiaohui8709253 2009-12-27
  • 打赏
  • 举报
回复
问题还是没解决,谢谢大家了,本地的路径传到服务器上去不行啊,
zhongjiekangping 2009-12-25
  • 打赏
  • 举报
回复
就因该是 路径的问题了 参考 7楼
huanqun1020 2009-12-25
  • 打赏
  • 举报
回复
我也有一个这样的问题,不知道是怎么回事
xiaoyuzi 2009-12-18
  • 打赏
  • 举报
回复
直接传客户端文件路径过去肯定不行,服务器不能够使用这个路径,这个路径只存在于客户端。
网上有个例子,你仿照它做应该没问题
http://www.codeproject.com/KB/aspnet/HttpHandlerFileUploader.aspx
sxiaohui8709253 2009-12-18
  • 打赏
  • 举报
回复
谢谢楼上的回答
sxiaohui8709253 2009-12-18
  • 打赏
  • 举报
回复
有人说要用httppostedfile这个对象
可是我只有一个filePath 没办法实例化 这个啊
sxiaohui8709253 2009-12-18
  • 打赏
  • 举报
回复
这个参数是文件的路径
nosuchtracter 2009-12-18
  • 打赏
  • 举报
回复
CheckImgSize.ashx?filePath=
你这个参数传的是什么值?
sxiaohui8709253 2009-12-18
  • 打赏
  • 举报
回复
谢谢楼上的回答
我alert(xmlHttp.responseText)
在本地的运行的时候filePath 指示本地正确的路径,能做出ajax反应
在IIS上,他提示找不到c:\fakepath\这样一个路径
我无论浏览哪个文件,他都提示找不到C盘下这样一个目录
求高手解答
  • 打赏
  • 举报
回复
我的一个时间类型本机运行没问题,上传到服务器也出问题了。
我在想有些问题是不是我们梧桐的盗版的软件和服务器上的正版的不兼容搞的,
也就是说有些问题是搞不定的,必须得用正版的才行
Updates: 1)增加防止COOKIE欺骗攻击的加密KEY属性设置,编辑器用到的COOKIE都将会进行加密。 2)更新编辑器帮助文件。 3)文字水印调整为只添加到图像宽高>100像素的图片上面,并且调整编辑器默认配置添加的是图片水印! 2010/04/02 Version 6.1.6 For VS2005/2008 Updates: 1)针对IIS6.0文件解析高危漏洞进行修正。 2)上传功能的一些优化。 3)文件夹重命名的一些改进。 2010/03/08 Version 6.1.5 For VS2005/2008 Updates: 1)修正了一个安全方面的BUG。 2)修正保存远程图片到本地功能的保存路径问题。 3)修正保存远和图片到本地功能在IE6及IE7的提交BUG。 4)修正上传图片界面中对齐方式不能生效的BUG! 2010/01/15 Version 6.1.4 For VS2005/2008 Updates: 1)加入保存远程图片到本地的功能图标到菜单栏,配置代码为remoteupload。 2)修正FireFox下插入WMA等音频文件不能播放的BUG. 3)修正关闭图像预览后可能出现的BUG. 4)修正保存图片到本地的一些BUG. 5)更新配置器,增加保存远程图片到本地功能的配置. 2009/12/10 Version 6.1.3 For VS2005/2008 Updates: 1)修正了firefox浏览器下编辑器宽度设置为100%会出错的BUG。 2)优化了图片水印功能,图片水印可以4:1为比例自适应图片。 3)增加水印调整功能的左上,左下,右上,右下角的位置(默认右下)。 4)增加图片水印是否半透明的选项。 2009/11/25 Version 6.1.2 For VS2005/2008 Updates: 1)修正插入视频的地址是mms、rtsp的话,路径就不对的BUG。 2)优化了上传成功后的处理代码。 3)改进了插入表情图标的功能(增加了多组表情,并且鼠标经过表情后可自动放大表情)。 4)优化了编辑器的整体结构。 2009/09/30 Version 6.1.1 For VS2005/2008 Updates: 1)修正上传管理中删除文件夹及重命名文件夹导致Session失效的BUG。 2)改善了新建文件夹的方式,按取消按键后文件夹将不会被新建。 3)重新用回Cookie方式储存参数,并且加强COOKIE的安全性。(因为session在操作删除目录后会掉失) 2009/08/07 Version 6.1.0 For VS2005/2008 Updates: 1)改用Session代替部分Cookie储存上传功能所用到的配置数据,以便让编辑器上传更加安全。 2)修正一个文件格式上传时存在的安全性问题。 3)上传页面去掉所有input隐藏属性储存参数,改用ViewState储存,并加入ViewState的防改措施。 2009/07/05 Version 6.0.9 For VS2005/2008 Updates: 1)修正插入表格后在表格单元格插入内容会插到另一个单元格的BUG。 2)控件可视化配置工具中的功能显示中插入excel表格改为导入Excel表格。 2009/06/23 Version 6.0.8 For VS2005/2008 Updates: 1)去掉现在基本没法使用的插入EXCEL表格功能,改为无组件的导入EXCEL文档功能(测试中,导入excel文档必须符合数据库格式,否则导入数据将不全)。 2)更新编辑器的部分文字资源。 3)修正4号与5号字体大小一样的BUG! 2009/06/15 Version 6.0.7 For VS2005/2008 Updates: 1)修正word导入功能中如果选择了保存word文档到服务器,那么下次相同的文件将不能再次导入的BUG! 2009/06/02 Version 6.0.6 For VS2005/2008 Updates: 1)修正了6.0.5版本增加功能后出现上传后出错的严重BUG。 2009/05/23 Version 6.0.5 For VS2005/2008 Updates: 1)修正了上传远程图片文件时可能出现404的错误。 2)修正插入部分远程URL图片时可能出现无法显示的错误。 3)修正FireFox浏览器下弹出窗口自适应大小功能不正常的BUG。 4)改进了多文件上传后自动选择添加到上传列表的文件。 5)改进了如找不到对应语言文件则使用默认语言的功能。 2009/05/15 Version 6.0.4 For VS2005/2008 Updates:
##KodExplorer (http://kalcaddle.com/) ###ver2.61(2014.7.12) `商业版授权请联系:kalcaddle#qq.com` #### 1.是什么: - Kodexplorer为千帆网络工作室开发的一款服务器文件管理程序。 - 完美取代FTP管理:可用于服务器文件管理,zip解压缩 备份还原、支持图片、音乐、视频预览、office、pdf等格式在线预览。文件夹拖拽上传……。 - 在线编程:支持几乎所有编程语言的在线编辑(高亮,多光标编辑.堪比本地的sublime) - 极佳的操作体验:及其便捷的快捷键支持,让你拥有本地化的体验 - 中文等多语言支持:中文编码全面兼容,文件编辑自动适配。 - 超快的速度:全面采用Ajax+Json进行数据通信,毫秒级的响应速度; - 全平台兼容性:Win Linux Mac (Apache、Nginx、IIS) #### 2.使用场景: - 取代FTP,服务端、客户端软件等复杂的安装配置。kod可以一键安装随处使用. - 你可以用它来管理你的服务器(备份,在线解压缩,版本发布....) - 你可以把他当做管理linux的一个操作系统界面 - 可以用来作为私有云存储系统,存储你的文件... - 当然你也可以用来分享文件 - Web IDE / browser code editor awesomeness - 更多场景等你来挖掘!…… #### 3.使用说明 管理员: admin/admin 普通用户:demo/demo 游客用户:guest/guest [如何使用] 下载程序,解压上传到你的服务器路径下,data目录设置777权限。访问体验超便捷的服务吧! (data目录没有写权限会导致配置修改不能保存、不能新建用户等) [关于上传问题] 程序没有做任何限制,如果需要上传大文件,则修改 php.ini:`upload_max_filesize = 1000M post_max_size = 1000M` [关于解压缩问题] 程序不做任何限制,如若失败请设置php内存限制。memory_limit 1000M [关于兼容性] 建议使用chrome firefox ie9+ 体验更完整。ie8以下基本上不做兼容处理。chrome支持文件夹拖拽上传。 [文件打开] office文件在线预览功能,服务器必须在公网(外部能访问该服务器) [忘记密码] 修改data/system/member.php 密码为明文的md5值 例如将admin密码重设为admin 则修改第一行:"name":"admin","password":"21232f297a57a5a743894a0e4a801fc3" ![](https://cloud.githubusercontent.com/assets/3761968/2583304/764f562a-b9cf-11e3-8e59-afdbdffc20eb.png) ###ver2.61 `2014/7/12` ---- ####update: - 实时搜索,根据搜索框内容变化,实时选中匹配到的结果; - 弹出搜索框遍历子文件夹递归搜索 - session key 加入kod_前缀 避免和其他系统key冲突 - 编辑器选中优化 选择鼠标到窗口外事件处理 ####fix bug:(bug解决和程序优化) - backspace后退截获浏览器事件,作为后退前一次访问的文件夹; - 搜索首字母不匹配问题 - 弹出层中的弹出层关闭,父窗口失去焦点问题。 - 代码中grunt部分代码拆分开,放到程序外面;提交到git、osc - 桌面:删除alert enter快捷键删除 - install 检测 加入跳过,(只判断用到的函数) 加入多语言 - zip压缩没有权限 提示红色,false 统一查找 - 登录成功后 验证码输错清除 - 非root用户拖拽到文件夹问题 - 非root解压问题 不能解压 - list oexe 图标问题 - 用户目录不存在判断 - fileCahe 互斥锁 reset 不用 - ie 8~10样式问题调整 ###ver2.6 `2014/7/6` ---- ####update: - 完全性优化;加入严格的校验机制 - 首次运行环境检测[data目录检测,必须的函数支持提示] - 上传已存在处理——创建副本(另外包括粘贴,解压) - 选中优化 ctrl选中拖拽 - 键盘快捷键选中文件,多个字符

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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