作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我想删除 welcome.html 文件如何使用 http doDelete() 方法删除它如何操作我是 java 的新手所以请帮助我
public void doDelete(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
boolean success = false;
File file = null;
try {
file = searchFile(request);
} catch (Exception ex) {
java.util.logging.Logger.getLogger(Request.class.getName()).
log(java.util.logging.Level.SEVERE, null, ex);
}
if (!file.exists()) {
response.sendError(HttpServletResponse.SC_NOT_FOUND);
return;
} else {
success = file.delete(); // actual delete operation
}
if (success) {
response.setStatus(HttpServletResponse.SC_NO_CONTENT);
}
}
private String searchFile(HttpServletRequest req) throws Exception {
String fileName = req.getPathInfo();
fileName = fileName.substring(1);
return fileName;
}
最佳答案
当我们等待您解释如何您的代码“不起作用”时……我应该指出,如果这段代码确实起作用,那将是极度危险。
您的代码不会尝试检查是否允许用户(即发送请求的人)应该删除文件,或者用户试图删除的内容。如果某个坏人向您发送了一个包含“..”的 DELETE 请求,他们可能会诱骗您的 Web 服务器尝试删除文件系统中的任何文件!!!(希望您永远不会以“root”身份运行你的网络服务器......)
更新:您问题的答案很简单。改变
file = searchFile(request);
到
file = new File(searchFile(request));
但这是最少的问题!
关于java - 我想使用 http doDelete() 方法从服务器中删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19905492/
如果我想删除 welcome.html 文件如何使用 http doDelete() 方法删除它如何操作我是 java 的新手所以请帮助我 public void doDelete(HttpServl
我目前正在 AX2012 中的插入、更新和删除方法中使用事件处理程序订阅进行数据库日志记录,但是我遇到的问题是,如果通过 doinsert、doupdate 或 dodelete 调用该方法,则不会触
我是一名优秀的程序员,十分优秀!