java - NullPointerException 通过 Service 使用 RestTemplate 从 Spring Boot(具有 JWT Security)Rest 服务中的 .NET webapi 获取数据

标签 java spring-boot asp.net-web-api c#-4.0 resttemplate

.NET WebAPI + 用于产品数据库的 MongoDB Spring Boot Security (JWT) + MySQL 用于用户帐户数据库和身份验证 我正在尝试从 Spring boot 服务内的 .NET webAPI 获取价格

Spring 启动产品服务:

@Service
public class ProductService {
    public long getProductPrice(String pid) {
        // uri that returns product price (like 9999.99)
        final String uri = "http://localhost:5000/api/products/price?pid="+pid;
        RestTemplate restTempl = new RestTemplate();
        long price = restTempl.getForObject(uri, long.class);
        System.out.println(price); // here it prints null
        return price;
    }
}

.NET WebAPI Controller :

[HttpGet("price")]
public decimal GetProductPrice([FromQuery] string pid){
    return _productService.GetProductPrice(pid);
}

一切都很好,即使是“建立成功”。但每当调用 getProductPrice(提供的 pid)时,它都会在控制台上打印并返回 null 并带有 NullPointerException。

更新: 我暂时切换到一个简单的 PHP Rest API 并称为 uri。这次一切正常,获取并打印了价格,Spring boot 方面没有任何异常。 我注意到,当我在网络浏览器中使用 uri http://... 时,它会自动重定向到 https://... 地址上带有不安全标签酒吧。这是主要原因吗? Spring Boot服务端是否需要进行SSL配置?或者我的代码有任何其他问题。请帮忙。

最佳答案

在产品应用中,您是否看到 getProductPrice() 发送的任何传入请求?访问日志中可能有什么内容?如果是,响应状态是什么?如果没有,为什么 getProductPrice() 没有发送请求?在这种情况下,发送方一定有错误。

关于java - NullPointerException 通过 Service 使用 RestTemplate 从 Spring Boot(具有 JWT Security)Rest 服务中的 .NET webapi 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62243458/

相关文章:

Java play框架 对同一对象的异步操作

java - Spring Batch JdbcPagingItemReader 似乎没有执行所有项目

spring - 为什么我无法通过 Gradle 下载工件?

spring - 使用 Autowiring 存储库测试 Spring Boot MVC

不依赖 IIS 的 ASP.NET Web API 应用程序

asp.net-mvc - 使用 HttpSelfHostServer 和 IDependencyResolver 时为 "Inheritance security rules violated"

javascript - 如何在java中发送响应期间压缩Rest服务中的数据(对象)

java - Apache POI - 基于 2 个日期参数导出到 Excel

asp.net-web-api - 将 WebApi OData v3 项目升级到 OData v4

java - 创建名为 'mySessionFactory' 的 bean 时出错 bean 初始化失败;嵌套异常是 MalformedParameterizedTypeException