[英]Send a file through an http request
我正在學習D3.js 庫 。 如本示例中所述,如何使用httpRequest發送文件: chart ?
我在eclipse中有一個本地服務器tomcat。 可以使用嗎?
@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;
通過使用Apache通用jar,示例代碼將如下所示
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);
}
}
看看File Upload Servlet以獲得完整的代碼片段
編輯
從Servlet調用javascript:
request.getRequestDispatcher("/some.jsp").forward(request,response)
在此jsp中,只需調用Javascript。
但這不是一個好的設計。 Servlet在服務器上執行,而Javascript在客戶端上執行。 如果要從本地計算機上載文件,則可以使用Java或Javascript的文件上載實用程序。 從Servlet調用Javascript是不正確的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.