首页 > 编程语言 >java-http携带json参数访问接口

java-http携带json参数访问接口

时间:2023-06-20 23:23:13浏览次数:44  
标签:map java String new json import http conn

一个接收map的接口

 @RequestMapping("kkw")
    public String kkw(@RequestBody Map<String,Object>map){
        if(map != null){
            System.out.println(JSONObject.toJSONString(map));;
        }
        return "success";
    }

package com.example.demo.test;

import com.alibaba.fastjson.JSONObject;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;

public class HttpJsonCase {
    public static void main(String[] args) {
        try {
            // 定义目标 URL
            String url = "http://127.0.0.1:9200/kkw";

            // 创建 HTTP 连接并设置请求方法为 POST
            HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
            conn.setRequestMethod("GET");

            // 设定要传输的数据格式为 JSON
            conn.setRequestProperty("Content-Type", "application/json; utf-8");
            conn.setRequestProperty("Accept", "application/json");

            // 启用输出,因为我们需要将 JSON 请求正文发送到 API 端点。
            conn.setDoOutput(true);

            Map<String,Object> map = new HashMap<>();
            map.put("key","value");
            map.put("name","caoxuekun");

            // 创建 JSON 数据对象
            String jsonInputString = JSONObject.toJSONString(map);

            // 将 JSON 数据写入 HTTP 请求正文中
            try {
                OutputStream os = conn.getOutputStream();

                byte[] input = jsonInputString.getBytes("utf-8");
                os.write(input, 0, input.length);
            }catch (Exception e){

            }

            // 获取 API 响应并打印
            try{
                BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8"));
                StringBuilder response = new StringBuilder();
                String responseLine = null;
                while ((responseLine = br.readLine()) != null) {
                    response.append(responseLine.trim());
                }
                System.out.println(response.toString());
            }catch (Exception e){
                e.printStackTrace();
            }

            // 断开连接
            conn.disconnect();
        } catch (Exception e) {
            System.err.println(e);
        }
    }
}

标签:map,java,String,new,json,import,http,conn
From: https://www.cnblogs.com/caoxuekun/p/17495125.html

相关文章

  • java调用pmml算法模型
    ==背景==项目需要调用算法模型,用于优化工艺参数。 ==思路==根据团队不具备算法训练能力的特点,技术上采用“训练与使用分离”的策略,即:模型训练寻找第三方渠道,将训练好的算法模型导出pmml文件,然后通过java调用模型文件。 ==代码样例==【准备模型】找朋友要了了一个测试用......
  • 简单记录下 Spring Boot 使用虚拟线程Virtual Threads(Java的协程)的方法
    在之前的文章中,简单描述了将springboot2.x升级springboot3.1的版本的过程。本文将简单介绍如何在spring中引入虚拟线程,在文章最后会放上一些关于虚拟线程的官方参考资料。JDK22会引来重要特性,VirtualThreads也就是协程功能。与主流的async、await方案(C#、JS等语言)相比......
  • 为什么很多人说不建议学JAVA,说很难找到工作?
    个人感觉这个观点有点片面。虽然国内的IT市场已经变得越来越竞争激烈,但Java作为一种应用广泛的编程语言仍然非常受欢迎。Java可以应用于Web开发、移动开发、大数据处理等多个领域,具有广泛的用途和良好的生态圈。因此,在Java领域拥有一定技能的人才仍然有很多岗位可以选择。如果......
  • 微服务 – Spring Cloud – Eureka - RestTemplate和@LoadBalanced 实现服务发现调用(
    背景:服务注册用的是Eureka集群。服务调用用的是注解@LoadBalanced和RestTemplate服务数量两个:order服务和pyment服务(order服务是调用者。payment服务是被调用者)首先将order服务和payment服务注册Eureka集群中。通过order调用payment服务Eureka集......
  • python: Reading and Writing JSON to a File
     #importjsonjsondata={'sqlserver':[{"server":"DESKTOP-NQK85G5\GEOVIN2008","useid":"sa","password":"......
  • Java的7种位运算符
    位运算符在Java语言中,提供了7种位运算符,分别是按位与(&)、按位或(|)、按位异或(^)、取反(~)、左移(<<)、带符号右移(>>)和无符号右移(>>>)操作符语义描述运算规则&  按位与    二进制数据按位与操作如果两个二进制位上的数都是1,那么运算结果为1,其他情况运算结果......
  • 基于JAVA文件管理系统的设计与实现
    文件管理系统实现了文件浏览、文件分类、文件上传的功能需求,该系统是文件批处理处理过程中的重要组成部分,可实现文件信息的正确性、实时性、全面性、快捷性等需求。这个系统是基于Windows操作系统下,基于J2EE采用了Jsp、spring mvc、网络编码等技术,与MYSQL数据库管理系统来结......
  • 使用python对AWS-CloudTrail-Json-日志文件key字段名称的提取
    关于AWS CloudTrail-在Console界面,默认只能看到最近90天的数据如果需要追踪更早的操作记录,得需要配置CloudTrail日志输出保存到s3在s3上不同的region位于不同的目录,最后会将某一天的日志,存放到那一天的目录/文件夹中,目录路径格式(部分)如:aws-account-xxx/CloudTrail/cn-nort......
  • 使用poi时报错:java.io.EOFException: Unexpected end of ZLIB input stream
    原文:点击查看代码FileexcelFile=newFile(filePath);try{if(excelFile.exists()){wb=newSXSSFWorkbook(newXSSFWorkbook(excelFile),1000,true);}else{wb=newSXSSFWorkbook(1000);}}catch(IOExceptione){logger.error(tra......
  • JSON及XML学习总结
    1.手写JSON中字符串转java对象的方式//构建java对象Studentstudent=newStudent();//利用JSON类中的toJSON对象转换成JSON字符串Strings=JSON.toJSON(Student).toString();2.手写java对象转JSON字符串的方式Stringss="{\"skills\":[\"1\",\"2\",\"足球\&qu......