`
JadeLuo
  • 浏览: 425629 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

java http请求头设置强制服务端返回不同格式结果

    博客分类:
  • java
 
阅读更多
/*
 * ====================================================================
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * ====================================================================
 *
 * This software consists of voluntary contributions made by many
 * individuals on behalf of the Apache Software Foundation.  For more
 * information on the Apache Software Foundation, please see
 * <http://www.apache.org/>.
 *
 */
package org.apache.http.examples.client.win;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.WinHttpClients;

/**
 * This example demonstrates how to create HttpClient pre-configured with
 * support for integrated Windows authentication.
 */
public class ClientWinAuth {

    public final static void main(String[] args) throws Exception {

        if (!WinHttpClients.isWinAuthAvailable()) {
            System.out.println("Integrated Win auth is not supported!!!");
        }

        CloseableHttpClient httpclient = WinHttpClients.createDefault();
        // There is no need to provide user credentials
        // HttpClient will attempt to access current user security context through
        // Windows platform specific methods via JNI.
        try {
//            HttpGet httpget = new HttpGet("http://10.0.1.209:8084/WebServletTest/ServletTest");
            HttpGet httpget = new HttpGet("http://changba.com/s/rXjwse6PBuNQd4fROXSh_Q");
            httpget.addHeader("User-Agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.23 Mobile Safari/537.36");
            System.out.println("Executing request " + httpget.getRequestLine());
            CloseableHttpResponse response = httpclient.execute(httpget);
            try {
//                System.out.println("----------------------------------------");
//                System.out.println(response.getStatusLine());
//                System.out.println(response.getProtocolVersion());
                HttpEntity httpEntity = response.getEntity();
                InputStream is = null;
                if (response.getEntity() != null) {
                    is = httpEntity.getContent();
                }
                String message = ConvertStreamToString(is);
                System.out.println("message=" + message);
//                EntityUtils.consume(response.getEntity());
            } finally {
                response.close();
            }
        } finally {
            httpclient.close();
        }
    }

    public static String ConvertStreamToString(InputStream is) {
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        StringBuilder sb = new StringBuilder();
        String line = null;
        try {
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
        } catch (IOException e) {
            System.out.println("Error=" + e.toString());
        } finally {
            try {
                is.close();
            } catch (IOException e) {
                System.out.println("Error=" + e.toString());
            }
        }
        return sb.toString();
    }

}

 

分享到:
评论

相关推荐

    DataTables自行封装请求参数和返回数据的零耦合服务端分页示例(PHP&JAVA)

    本例子主要展示了自行封装请求参数和返回数据的用法,对后台的交互没有任何格式和命名限制。 基于Bootstrap 2.3.2,相关的其他插件包括图标控件FontAwesome、等待提示控件Spinjs(修改版)、弹窗控件lhgdialog(修改版) ...

    java源码包---java 源码 大量 实例

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    微信支付v2/v3服务端native代码

    在V2版本中,微信支付服务端接口主要使用HTTP/HTTPS协议,XML格式的数据交换,接口调用通常采用签名机制来保证数据的安全性。Java开发者通常会使用如`HttpClient`或`OkHttp`库来实现网络请求,`DOM`或`SAX`解析XML...

    Java Webservice Axis2 Client(含soapheader验证)

    与SOAP Body不同,SOAP Header中的信息不强制要求被处理,但可以用于服务端进行特定操作。 创建Axis2客户端的步骤如下: 1. **安装和配置Axis2**:首先,你需要在项目中添加Axis2库。这可以通过Maven或Gradle依赖...

    java源码包3

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java源码包2

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    java安全之java-web1

    Servlet是Java Web应用程序的核心组件,用于处理客户端请求并返回响应。随着Java EE版本的演进,Servlet的功能和灵活性也在不断增强。 首先,从Java Web的发展历程来看,Servlet版本与Java EE版本并不完全对应,每...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证...

    java源码包4

     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证...

    java三级题库及答案

    2. **请求头名称**:选项B的说法有误,getHeaderNames方法返回的是请求头名称的枚举,而不是字符串对象。 3. **请求方法**:选项C正确地描述了getMethod方法的功能。 4. **协议版本**:选项D正确地指出getProtocol...

    java rpc 实例

    这样,客户端就能接收到服务端返回的数据,并进行相应的处理。 标签中的“java client”指的是Java客户端编程,而“xmlrpc”则特指使用XML-RPC协议进行通信。理解RPC的基本原理和XML-RPC的实现方式,对于开发分布式...

    java调用.net写的Webservice[归类].pdf

    在上述代码中,`setSOAPActionURI()`方法用于设置SOAPAction HTTP请求头的值,这是为了指定调用哪个Web服务操作。然而,有时候会遇到“服务器未能识别HTTP标头SOAPAction的值”的错误。这通常是由于.NET WebService...

    JAVA与SOAP

    4. **健壮性**:Java强制进行异常处理,提高了程序的稳定性。 5. **多线程**:Java内置了对多线程的支持,使得开发者可以方便地编写并发程序。 6. **丰富的库**:Java标准版(Java SE)和企业版(Java EE)提供了...

    java DWR实现一个用户在同一时间只能登录一次的解决方案

    DWR允许JavaScript直接调用服务器端的Java方法,并将结果返回到客户端,无需传统的HTTP请求。这种实时通信使得前端可以即时响应服务器端的变化,为防止重复登录提供了基础。 实施此功能的第一步是建立用户表。表的...

    JAVA 知识大全 PPT

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能、稳定性和安全性著称。这份“JAVA知识大全PPT”涵盖了Java的核心概念和技术,对于学习和深入理解Java编程至关重要。以下将详细介绍Java的关键知识点。 ...

    java初学者必看的文章

    - **HTTP协议**:Java中可以使用HttpClient等库发送HTTP请求。 - **TCP/IP协议栈**:理解TCP/IP模型对于进行更高级别的网络编程非常有帮助。 总之,对于Java初学者而言,熟练掌握上述知识点是非常重要的,这不仅有...

    java学习和项目中一些典型的应用场景样例代码.zip

    1. **网络编程**:Java提供了丰富的API来处理网络通信,如Socket编程,可以用于创建客户端和服务端进行数据传输。HTTP、FTP等协议库也是Java网络编程的重要组成部分,例如使用HttpURLConnection进行HTTP请求。 2. *...

    商业编程-源码-自动更新程序及配置服务端源代码.zip

    4. 开发工具和框架:构建这样的系统可能需要使用多种开发工具和框架,如Java的Spring Boot用于服务端开发,JavaScript的Node.js或Python的Flask/Django用于构建RESTful API,以及C#或Java的GUI库如Swing或JavaFX来...

Global site tag (gtag.js) - Google Analytics