当前位置: 首页>>代码示例>>Java>>正文


Java HttpRequest.getFirstHeader方法代码示例

本文整理汇总了Java中org.apache.http.HttpRequest.getFirstHeader方法的典型用法代码示例。如果您正苦于以下问题:Java HttpRequest.getFirstHeader方法的具体用法?Java HttpRequest.getFirstHeader怎么用?Java HttpRequest.getFirstHeader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.http.HttpRequest的用法示例。


在下文中一共展示了HttpRequest.getFirstHeader方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: process

import org.apache.http.HttpRequest; //导入方法依赖的package包/类
public void process(HttpRequest request, HttpContext context) {
    if (!request.containsHeader(AsyncHttpClient.HEADER_ACCEPT_ENCODING)) {
        request.addHeader(AsyncHttpClient.HEADER_ACCEPT_ENCODING, AsyncHttpClient
                .ENCODING_GZIP);
    }
    for (String header : AsyncHttpClient.access$000(this.this$0).keySet()) {
        if (request.containsHeader(header)) {
            Header overwritten = request.getFirstHeader(header);
            Log.d(AsyncHttpClient.LOG_TAG, String.format("Headers were overwritten! (%s | %s)" +
                    " overwrites (%s | %s)", new Object[]{header, AsyncHttpClient.access$000
                    (this.this$0).get(header), overwritten.getName(), overwritten.getValue()}));
            request.removeHeader(overwritten);
        }
        request.addHeader(header, (String) AsyncHttpClient.access$000(this.this$0).get(header));
    }
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:17,代码来源:AsyncHttpClient$1.java

示例2: process

import org.apache.http.HttpRequest; //导入方法依赖的package包/类
public void process(final HttpResponse response, final HttpContext context)
        throws HttpException, IOException {
    if (response == null) {
        throw new IllegalArgumentException("HTTP response may not be null");
    }
    if (context == null) {
        throw new IllegalArgumentException("HTTP context may not be null");
    }
    // Always drop connection after certain type of responses
    int status = response.getStatusLine().getStatusCode();
    if (status == HttpStatus.SC_BAD_REQUEST ||
            status == HttpStatus.SC_REQUEST_TIMEOUT ||
            status == HttpStatus.SC_LENGTH_REQUIRED ||
            status == HttpStatus.SC_REQUEST_TOO_LONG ||
            status == HttpStatus.SC_REQUEST_URI_TOO_LONG ||
            status == HttpStatus.SC_SERVICE_UNAVAILABLE ||
            status == HttpStatus.SC_NOT_IMPLEMENTED) {
        response.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE);
        return;
    }
    Header explicit = response.getFirstHeader(HTTP.CONN_DIRECTIVE);
    if (explicit != null && HTTP.CONN_CLOSE.equalsIgnoreCase(explicit.getValue())) {
        // Connection persistence explicitly disabled
        return;
    }
    // Always drop connection for HTTP/1.0 responses and below
    // if the content body cannot be correctly delimited
    HttpEntity entity = response.getEntity();
    if (entity != null) {
        ProtocolVersion ver = response.getStatusLine().getProtocolVersion();
        if (entity.getContentLength() < 0 &&
                (!entity.isChunked() || ver.lessEquals(HttpVersion.HTTP_1_0))) {
            response.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE);
            return;
        }
    }
    // Drop connection if requested by the client or request was <= 1.0
    HttpRequest request = (HttpRequest)
        context.getAttribute(ExecutionContext.HTTP_REQUEST);
    if (request != null) {
        Header header = request.getFirstHeader(HTTP.CONN_DIRECTIVE);
        if (header != null) {
            response.setHeader(HTTP.CONN_DIRECTIVE, header.getValue());
        } else if (request.getProtocolVersion().lessEquals(HttpVersion.HTTP_1_0)) {
            response.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE);
        }
    }
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:49,代码来源:ResponseConnControl.java

示例3: generate

import org.apache.http.HttpRequest; //导入方法依赖的package包/类
/**
 * Генерация отчета по его имени.
 *
 * @param request запрос пришедший от клиента
 * @return Отчет в виде массива байт.
 */
public synchronized Response generate(HttpRequest request) {
    final long start = System.currentTimeMillis();
    String url = NetUtil.getUrl(request);
    final String nameReport =
        url.lastIndexOf(".") == -1 ? url.substring(1) : url.substring(1, url.lastIndexOf("."));

    final IGenerator generator = generators.get(nameReport.toLowerCase());
    // если нет такого отчета
    if (generator == null) {
        return null;
    }
    // Значит такой отчет есть и его можно сгенерировать
    // но если запрошен отчет, то должны приехать пароль и пользователь в куках
    // для определения доступа к отчетам.
    // Cookie: username=%D0%90%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80; password=
    // Проверим правильность доступа, и если все нормально сгенерируем отчет.
    // Иначе выдадим страничку запрета доступа
    // Но есть нюанс, формирование списка отчетов - тоже формироватор, и к нему доступ не по кукисам,
    // а по введеному паролю и пользователю. По этому надо проверить если приехали параметры пароля и пользователя,
    // введенные юзером, то игнорировать проверку кукисов. Т.е. если гениратор reportList, то не проверяем кукисы
    if (!"/reportList.html".equals(url)) {

        if (request.getFirstHeader("Cookie") == null) {
            // если куков нет
            return getLoginPage();
        }
        final HashMap<String, String> cookie = NetUtil
            .getCookie(request.getFirstHeader("Cookie").getValue(), "; ");
        final String pass = cookie.get("password");
        final String usr = cookie.get("username");
        if (pass == null || usr == null) {
            // если не нашлось в куках
            return getLoginPage();
        }
        if (!isTrueUser(usr, pass)) {
            // если не совпали пароли
            return getLoginPage();
        }
    }
    System.out.println("Report build: '" + nameReport + "'\n");
    QLog.l().logRep().info("Генерация отчета: '" + nameReport + "'");
    /*
     * Вот сама генерация отчета.
     */
    final Response result = generator.process(request);

    QLog.l().logRep().info("Генерация завершено. Затрачено времени: "
        + ((double) (System.currentTimeMillis() - start)) / 1000 + " сек.");
    return result;
}
 
开发者ID:bcgov,项目名称:sbc-qsystem,代码行数:57,代码来源:QReportsList.java


注:本文中的org.apache.http.HttpRequest.getFirstHeader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。