Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以使用SpringBoot使用其他人的API发出请求吗?_Java_Spring_Rest_Api - Fatal编程技术网

Java 我可以使用SpringBoot使用其他人的API发出请求吗?

Java 我可以使用SpringBoot使用其他人的API发出请求吗?,java,spring,rest,api,Java,Spring,Rest,Api,我是春天的新手,我正在努力理解它。我可以使用SpringBoot调用其他人的api吗?例如,im使用的api需要使用他们给我的凭据进行身份验证。我想使用他们的API发出POST请求。到目前为止,我已经找到了与使用自己的API相关的文档。这些请求也需要传递头 使用Spring传递凭证和所需的头的POST请求最简单的方法是什么 任何帮助都将不胜感激。 你可以这样试试 这是实现这一目标的简单方法 您可以将用户名和密码设置为基本身份验证 如果我很了解你,你需要发布另一个带有凭据的web api,好的,

我是春天的新手,我正在努力理解它。我可以使用SpringBoot调用其他人的api吗?例如,im使用的api需要使用他们给我的凭据进行身份验证。我想使用他们的API发出POST请求。到目前为止,我已经找到了与使用自己的API相关的文档。这些请求也需要传递头

使用Spring传递凭证和所需的头的POST请求最简单的方法是什么

任何帮助都将不胜感激。

  • 你可以这样试试
  • 这是实现这一目标的简单方法
  • 您可以将用户名和密码设置为基本身份验证

如果我很了解你,你需要发布另一个带有凭据的web api,好的,你可以使用

  • restTemplate类似于下面的示例
在这里,我添加了header requestEntity以添加到resttemplate请求中

     HttpEntity<String> entity= new HttpEntity<>(header);
HttpEntity实体=新的HttpEntity(头);
这里我使用交换方法得到响应

   ResponseEntity<String> sprinklrResponse=restTemplate.exchange(uriBuilder.toUriString(),HttpMethod.POST,entity,  String.class);
ResponseEntity SprinkerResponse=restTemplate.exchange(uriBuilder.toUriString(),HttpMethod.POST,entity,String.class);

您需要以下东西:

  • 从创建SpringWebStarter项目
  • 在项目中创建一个新的Java类,并将其命名为
    Controller
    。将
    @RestController
    注释添加到类级别
  • 在SpringBootApplication中配置
    RestTemplate
    对象
  • Controller
    类中自动连接
    RestTemplate
    对象
  • Controller
    类中创建一个方法,该方法使用
    restemplate
    ,将
    @PostMapping
    调用其API

  • 只需在应用程序中使用一些HTTP客户端来执行请求。。。它与Spring无关(只有当你想使用
    RestTemplate
    )michalk是的,我想使用RestTemplate。我听说春天更容易,是真的吗?
            HttpHeaders header = new HttpHeaders();
            header.setBearerAuth(sprinklrCredential.getAccess_token());
            header.add("key", sprinklrCredential.getApi_key());
            header.set("Accept", MediaType.APPLICATION_JSON_UTF8_VALUE);
    
    
         HttpEntity<String> entity= new HttpEntity<>(header);
    
       ResponseEntity<String> sprinklrResponse=restTemplate.exchange(uriBuilder.toUriString(),HttpMethod.POST,entity,  String.class);