我是靠谱客的博主 轻松路灯,最近开发中收集的这篇文章主要介绍Java笔记-使用RestTemplate发送http数据包(get与post),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近看项目,方面大佬们都喜欢用RestTemplate去发送http报文,在此记录下,方便下次使用

这里只举get和post例子。

 

get例子。

程序运行截图如下:

后台:

源码如下:

这里要先配置下config

代码如下:

package cn.it1995.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration
public class AppConfig {

    @Bean
    public RestTemplate restTemplate(){

        return new RestTemplate();
    }
}

get方式源码如下:

MyController.java

package cn.it1995.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;


@RestController
public class MyController {

    @Autowired
    private RestTemplate restTemplate;


    @GetMapping("/getMsg")
    public Object sendMsg(@RequestParam("msg") String msg){


        ResponseEntity<String> forEntity = restTemplate.getForEntity(msg, String.class);

        System.out.println("------------head start------------");
        System.out.println(forEntity.getHeaders());
        System.out.println("------------head end------------");

        System.out.println("------------body start------------");
        System.out.println(forEntity.getBody());
        System.out.println("------------body end------------");
        System.out.println("nn");

        return null;
    }
}

下面是另外一个开源程序的例子,在此我直接贴下代码,post请求

    @PostMapping("/loginByQQ")
    public Object loginByQQ(String token, HttpServletResponse response, HttpServletRequest request){

        MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap();
        paramMap.add("token", token);
        ResponseEntity<Object> objectResponseEntity = restTemplate.postForEntity("http://127.0.0.7:8081/getLoginInfo", paramMap, Object.class);
        Object body = objectResponseEntity.getBody();
        String uuid = CookieUtil.setLoginCookie(request, response);

        //json标准化
        String newJson = body.toString().replace("=", ":");
        System.out.println(newJson);

        Map map = JSON.parseObject(newJson, Map.class);
        Map data = JSON.parseObject(map.get("data").toString(), Map.class);
        user.put(uuid, data);
        return Result.success();
    }

 

最后

以上就是轻松路灯为你收集整理的Java笔记-使用RestTemplate发送http数据包(get与post)的全部内容,希望文章能够帮你解决Java笔记-使用RestTemplate发送http数据包(get与post)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部