【发布时间】:2025-12-16 01:30:01
【问题描述】:
.NET WebAPI + MongoDB 用于产品数据库 Spring Boot Security (JWT) + MySQL 用于用户帐户数据库和身份验证 我正在尝试从 Spring Boot 服务中的 .NET webAPI 获取价格
Spring boot 产品服务:
@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 控制器:
[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://...,地址上带有 NOT SECURE TAG酒吧。这是主要原因吗?是否需要在 Spring Boot 服务端进行任何 SSL 配置?或者我的代码有任何其他问题。请帮忙。
【问题讨论】:
-
Uri 正确吗?产品应用程序正在运行?产品应用程序方面的任何错误?产品应用返回的有效响应?
-
@Serge uri 从 mongodb 返回产品价格。也在邮递员和铬上进行了测试。这是一个 GET 请求
标签: java spring-boot asp.net-web-api c#-4.0 resttemplate