【问题标题】:The operator && is undefined for the argument type(s) boolean, String运算符 && 未定义参数类型 boolean、String
【发布时间】:2018-07-13 02:41:15
【问题描述】:

我正在尝试检查以下所有条件是否返回 true 然后验证,

但编译器无法显示“操作符 && 未定义参数类型布尔值,字符串”。我来自 JS 背景而不是 JAVA,因此我们将不胜感激。

    String refererHeader = httprequest.getHeader("referer");
    URL refererURL = new URL(refererHeader);

    String requestUrl = httprequest.getRequestURL().toString();

    String refererHost = refererURL.getHost();
    int refererPort = refererURL.getPort();

    String serverName = httprequest.getServerName();
    int serverPort = httprequest.getServerPort();


    if (refererHeader == null) {
        httpresponse.setStatus(HttpServletResponse.SC_BAD_REQUEST);
        return;
    }
    //Only if the refererhost , port match with server name and port and if the pathinfo matches
    if(refererHeader.equals(requestUrl) &&
     refererHost.equals(serverName) &&
      serverPort == refererPort &&
       refererURL.getPath() + "?" + refererURL.getQuery().equals(PATH)) {
        chain.doFilter(request, response);
    } 

【问题讨论】:

  • 你忘记了一些括号:(refererURL.getPath() + "?" + refererURL.getQuery()).equals(PATH)

标签: java servlets equals servlet-filters


【解决方案1】:

改变

refererURL.getPath() + "?" + refererURL.getQuery().equals(PATH)

到

(refererURL.getPath() + "?" + refererURL.getQuery()).equals(PATH)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多