歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android --- Http協議,解析服務器中給定的XML文件時的權限問題

Android --- Http協議,解析服務器中給定的XML文件時的權限問題

日期:2017/3/1 10:23:22   编辑:Linux編程

Android --- Http協議,解析服務器中給定的XML文件時的權限問題。

如題:要求使用Http協議中的POST方法,解析存在服務器中的XML文件。

服務器使用的是Tomcat搭建,在webapp目錄下自定義一個xml文件。

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <error_logs>
  3. <log>
  4. <id name="id">1</id>
  5. <date name="date">2012-04-04 15:45</date>
  6. <from name = "from">the error from 1</from>
  7. <subject name="subject">subject1</subject>
  8. <content name="content">content aaaaaaaaaaaaaaaa</content>
  9. </log>
  10. <log>
  11. <id name="id">2</id>
  12. <date name="date">2012-03-12 11:33</date>
  13. <from name = "from">the_error_from_2</from>
  14. <subject name="subject">subject2</subject>
  15. <content name="content">content bbbbbbbbbbbbbbbbbbb</content>
  16. </log>
  17. <log>
  18. <id name="id">3</id>
  19. <date name="date">2012-03-02 01:00</date>
  20. <from name = "from">the_error_from_3</from>
  21. <subject name="subject">subject3</subject>
  22. <content name="content">content cccccccccccccccccccc</content>
  23. </log>
  24. </error_logs>

疑點:這個xml文件,只要是開著服務器,在浏覽器中直接輸入地址就訪問,那麼如何屏蔽這種直接訪問?

辦法:

1、寫一個過濾類

  1. package me.lechao;
  2. import java.io.BufferedReader;
  3. import java.io.File;
  4. import java.io.FileInputStream;
  5. import java.io.IOException;
  6. import java.io.InputStreamReader;
  7. import java.io.PrintWriter;
  8. import javax.servlet.Filter;
  9. import javax.servlet.FilterChain;
  10. import javax.servlet.FilterConfig;
  11. import javax.servlet.ServletException;
  12. import javax.servlet.ServletRequest;
  13. import javax.servlet.ServletResponse;
  14. import javax.servlet.http.HttpServletRequest;
  15. import javax.servlet.http.HttpServletResponse;
  16. public class IsLogin implements Filter {
  17. FilterConfig filterConfig;
  18. @Override
  19. public void destroy() {
  20. this.filterConfig = null;
  21. }
  22. @Override
  23. public void doFilter(ServletRequest arg0, ServletResponse arg1,
  24. FilterChain arg2) throws IOException, ServletException {
  25. HttpServletRequest req = (HttpServletRequest) arg0;
  26. HttpServletResponse res = (HttpServletResponse) arg1;
  27. String username = req.getParameter("username");
  28. String password = req.getParameter("password");
  29. PrintWriter out = res.getWriter();
  30. if ("1591408983".equals(username) && "123456".equals(password)) {
  31. //驗證成功可以訪問,屏蔽23456萬字
  32. } else {
  1. out.print("the username or password is error!");
  2. }
  3. out.flush();
  4. out.close();
  5. }
  6. @Override
  7. public void init(FilterConfig arg0) throws ServletException {
  8. this.filterConfig = arg0;
  9. }
  10. }
Copyright © Linux教程網 All Rights Reserved