java - 如何在Java中的GET方法的HttpRequest中添加 header

标签 java web-services rest http-headers access-token

我必须传递一个 token 作为每个 GET 请求验证的一部分才能访问 RESTful Web 服务。下面是我使用它访问 REST api 的代码:

public static String httpGet(String urlStr, String[] paramName, String[] paramVal) throws Exception {
        URL url = new URL(urlStr);
        HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
        conn.setRequestMethod("GET");
        conn.setDoOutput(true);
        conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 

        OutputStream out = conn.getOutputStream();
        Writer writer = new OutputStreamWriter(out, "UTF-8");
        for (int i = 0; i < paramName.length; i++) {
            writer.write(paramName[i]);
            writer.write("=");
            writer.write(URLEncoder.encode(paramVal[i], "UTF-8"));
            writer.write("&");
        }
        writer.close();
        out.close();

        if (conn.getResponseCode() != 200) {
            System.out.println("Response code: "+conn.getResponseCode());
            throw new IOException(conn.getResponseMessage());
        }

        BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        StringBuilder sb = new StringBuilder();
        String line;
        while ((line = rd.readLine()) != null) {
            sb.append(line);
        }
        rd.close();

        conn.disconnect();
        return sb.toString();
    }

我看不到任何为 HttpsURLConnection 提供的设置 header conn.setHeader() 的方法。它应该类似于 X-Cookie: token={token}; 请帮我找到一种设置 header 的方法。

最佳答案

您可以使用:

conn.addRequestProperty("X-Cookie", "token={token}");

setRequestProperty()也有效

关于java - 如何在Java中的GET方法的HttpRequest中添加 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29098500/

相关文章:

java - 如何在 Eclipse 中实现与 build.gradle 相同的功能(使用 Android 开发者工具)

java - 如何在div中执行或加载servlet?

java - 如何使用 Web 服务传递对象等复杂类型?

node.js - API自动化框架的最佳实践设计模式

javascript - 如何将 AngularJS 2 连接到 REST-API?

java - 使用 floodfill 计算矩阵中的相邻零点

java - 如何从单词相似度到句子整体相似度

c# - 检查我的 SSRS 报告如果代码为空

c# - UploadFromStream 到 Azure blob 时超出最大请求长度异常

java - 获取 ExceptionMapper 中抛出异常的方法的 @Produces 注解