HttpURLConnection中请求头中携带Token的使用方法

简介: HttpURLConnection中请求头中携带Token的使用方法
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class TokenRequestExample {
    public static void main(String[] args) throws IOException {
        // 设置API地址
        String apiUrl = "
        // 设置Token
        String token = "your_token_here";
        // 创建URL对象
        URL url = new URL(apiUrl);
        // 打开连接
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        // 设置请求头中的Authorization字段
        connection.setRequestProperty("Authorization", "Bearer " + token);
        // 发送GET请求
        connection.setRequestMethod("GET");
        // 获取响应结果
        int responseCode = connection.getResponseCode();
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = reader.readLine()) != null) {
            response.append(line);
        }
        reader.close();
        // 处理响应结果
        if (responseCode == HttpURLConnection.HTTP_OK) {
            System.out.println("请求成功!");
            System.out.println("响应内容:" + response.toString());
        } else {
            System.out.println("请求失败!");
            System.out.println("响应代码:" + responseCode);
            System.out.println("响应内容:" + response.toString());
        }
        // 关闭连接
        connection.disconnect();
    }
}

import java.net.HttpURLConnection;
/**
 * HttpGet请求
 * @param vurl:请求地址,map:{头部信息}
 * @return 返回消息
 */
public static String httpGet(String vurl,HashMap<String, Object> map) {
    try {
        URL url = new URL(vurl);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        for (Map.Entry item : map.entrySet()) {
            connection.setRequestProperty(item.getKey().toString(),item.getValue().toString());//设置header
        }
        InputStream in = connection.getInputStream();
        InputStreamReader isr = new InputStreamReader(in, "utf-8");
        BufferedReader br = new BufferedReader(isr);
        String line;
        StringBuilder sb = new StringBuilder();
        while ((line = br.readLine()) != null) {
            sb.append(line);
        }
        br.close();
        isr.close();
        in.close();
        return sb.toString();
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }
}

一般会在头部添加认证信息,如token值或BasicAuth认证的 Authorization值

HashMap<String, Object> tmap = new HashMap<String, Object>();
tmap.put("Authorization",authorization);//tmap.put("token","tonken值");
String vmsg= Comm.httpGet(vurl,tmap);//获取请求的返回结果


相关文章
|
存储 XML Java
Flowable工作流-高级篇
Flowable工作流-高级篇
9400 1
|
Java API 数据安全/隐私保护
Spring Boot中的文件系统操作
Spring Boot中的文件系统操作
|
JSON Java 数据安全/隐私保护
java中的http请求的封装(GET、POST、form表单、JSON形式、SIGN加密形式)
java中的http请求的封装(GET、POST、form表单、JSON形式、SIGN加密形式)
1277 1
|
存储 安全 算法
Java中防止压缩炸弹的技术分享
【8月更文挑战第17天】在软件开发和数据处理的日常工作中,我们经常会遇到各种压缩文件。然而,一种被称为“压缩炸弹”的恶意文件却给开发者带来了不小的困扰。压缩炸弹通过特殊设计的压缩算法,使得极小的文件在解压后能膨胀到异常巨大的体积,从而消耗大量系统资源甚至导致系统崩溃。本文将围绕“如何在Java中防止压缩炸弹”这一主题,分享一些实用的技术干货。
724 0
|
机器学习/深度学习 人工智能 前端开发
23招教你掌握大模型提示词技巧
当模型越来越懂人话,我们还需要学习提示语(Prompt)吗?本文总结了23招向AI提问的好方式。
23招教你掌握大模型提示词技巧
|
11月前
|
JSON 安全 数据可视化
Elasticsearch(es)在Windows系统上的安装与部署(含Kibana)
Kibana 是 Elastic Stack(原 ELK Stack)中的核心数据可视化工具,主要与 Elasticsearch 配合使用,提供强大的数据探索、分析和展示功能。elasticsearch安装在windows上一般是zip文件,解压到对应目录。文件,elasticsearch8.x以上版本是自动开启安全认证的。kibana安装在windows上一般是zip文件,解压到对应目录。elasticsearch的默认端口是9200,访问。默认用户是elastic,密码需要重置。
5662 0
|
网络协议 Windows
【IntelliJ IDEA】idea plugins搜索不出来,如何找到插件的解决方案
【IntelliJ IDEA】idea plugins搜索不出来,如何找到插件的解决方案
15724 1
|
Java Maven
震惊!idea专业版如何配置maven国内源手把手教学
文章提供了如何在IDEA专业版中配置Maven使用国内源(如阿里云)的详细步骤,以加快依赖下载速度,并解释了配置国内源的原因。
4535 0
震惊!idea专业版如何配置maven国内源手把手教学
|
easyexcel Java 关系型数据库
阿里巴巴-EasyExcel 基于Java的简单、省内存的读写Excel
该文章主要介绍了在Java应用中如何使用EasyExcel技术完成对Excel文件的导入和导出操作,包括环境搭建、基本概念、快速入门、进阶操作和综合应用等内容,并提供了相关代码示例和注意事项。
 阿里巴巴-EasyExcel 基于Java的简单、省内存的读写Excel
|
SQL Java 数据库连接
成功解决:was not registered for synchronization because synchronization is not active
这篇文章是关于解决Mybatis在同步过程中出现"was not registered for synchronization because synchronization is not active"错误的技术博客。
成功解决:was not registered for synchronization because synchronization is not active