Javascript 通过http请求发送文件
我正在学习D3.js。如何使用本示例中描述的httpRequest发送文件: 我在eclipse中有一个本地服务器tomcat。可以用这个吗Javascript 通过http请求发送文件,javascript,java,d3.js,httprequest,Javascript,Java,D3.js,Httprequest,我正在学习D3.js。如何使用本示例中描述的httpRequest发送文件: 我在eclipse中有一个本地服务器tomcat。可以用这个吗 @Override public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //send file from here } 然后从以下位置捕获它:
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//send file from here
}
然后从以下位置捕获它:
d3.tsv("data.tsv", function(error, data) {
if (error) throw error;
通过使用apachecommonjar,示例代码如下
if(ServletFileUpload.isMultipartContent(request)){
try {
List<FileItem> multiparts = new ServletFileUpload(
new DiskFileItemFactory()).parseRequest(request);
for(FileItem item : multiparts){
if(!item.isFormField()){
String name = new File(item.getName()).getName();
item.write( new File(UPLOAD_DIRECTORY + File.separator + name));
}
}
//File uploaded successfully
request.setAttribute("message", "File Uploaded Successfully");
} catch (Exception ex) {
request.setAttribute("message", "File Upload Failed due to " + ex);
}
}
在这个jsp中,只需调用Javascript
但这不是一个好的设计。Servlet在服务器端执行,Javascript在客户端执行。如果您想从本地计算机上载文件,可以使用Java或Javascript的文件上载实用程序。从Servlet调用Javascript是不对的。这不是一篇文章,这将是一个收获。@Cyril感谢您的评论,你能给我一个小片段吗?@Oirc:你想把文件从Javascript上传到Servlet还是想把文件从Servlet发送到Javascript?@Cyril我想把文件从Servlet发送到Javascript看一看:谢谢,那我怎么能从Javascript抓到它呢?->
d3.tsv(“data.tsv”,函数(错误,数据)
在上述示例的index.jsp中添加java脚本
request.getRequestDispatcher("/some.jsp").forward(request,response)