Я взял на себя проект Sring MVC и мне нужно изменить его поведение, поэтому в моем сервлете я отправляю запрос на получение для автоматического входа в систему, мой код сервлета выглядит так:

...
  public class ServletFilter implements Filter
  {
    int Count=0;
    ...

    public void doFilter(ServletRequest servletRequest,ServletResponse servletResponse,FilterChain filterChain) throws IOException,ServletException
    {

      if (Count==0)
      {
        String Login_URI="http://Example.com/SupportCenter/login.html?userName="+userName+"&password="+password;
        Count++;
        String result=sendGetRequest(Login_URI);
      }
    ...

      private String sendGetRequest(String url)
      { 
        StringBuffer response=new StringBuffer();
        String USER_AGENT="Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)";
        // String USER_AGENT="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0";

        try
        {
          URL obj=new URL(url);
          HttpURLConnection con=(HttpURLConnection)obj.openConnection();
          con.setRequestMethod("GET");
          con.setRequestProperty("User-Agent", USER_AGENT);

          int responseCode = con.getResponseCode();
          System.out.println("\nSending 'GET' request to URL : "+url);
    //    System.out.println("Response Code : "+responseCode);

          BufferedReader in=new BufferedReader(new InputStreamReader(con.getInputStream()));
          String inputLine;

          while ((inputLine=in.readLine()) != null) { response.append(inputLine); }
          in.close();
    //    System.out.println(response.toString());
        }
        catch (Exception e) { e.printStackTrace(); }
        return response.toString();
      }
    ...
    }

Когда я запускал его с Firefox, он входил в систему, но не работал в IE.

Я также вручную вставил URL:

http://Example.com/SupportCenter/login.html?userName=UID&password=PSW

В оба браузера, и они оба вошли в меня. Так почему же, когда мой сервлет запущен в IE, он не может войти в меня? И как я могу увидеть взаимодействие между браузерами и сервлетом за кулисами, чтобы я смоделировал это?

0
Frank 20 Авг 2014 в 20:42
Вы имеете в виду, когда ваш сервлет отправляет пользовательский агент IE через объект URL, а не отправляет пользовательский агент Firefox? Или вы имеете в виду, когда вы переходите к сервлету с одним браузером, а не с другим? Кроме того, какова цель отправки жестко запрограммированного пользовательского агента в сервлете?
 – 
developerwjk
20 Авг 2014 в 21:44

1 ответ

Лучший ответ

Разобрался почему, просто включение куки решило проблему.

0
Frank 23 Авг 2014 в 03:39