我正在兩個微服務之間進行通信。我正在嘗試從模型“UserBookPreference”中獲取內容。我已經除錯過了,PostAsync()請求中發送的內容是正確的(比如說,來自微服務 A 的資料)。當我嘗試從微服務 B 中的 Post 方法接收內容時出現問題。我作為引數的模型型別與我從 postAsync 發送的相同。由于我使用的是 .NET 5,因此JsonContent.Create()根據我的研究,該方法是一種很好的方法。我嘗試了其他方法,例如使用該StringContent()方法,但我仍然在微服務 B 中獲得了 null 物件。這是我正在使用的代碼。在微服務 A 中:
public async Task<string> AddFavoriteBook(UserBookPreference bookModel)
{
JsonContent content = JsonContent.Create(bookModel);
var response = await httpClient.PostAsync(URLHelper._baseUserPreferencesMicroserviceURL "/Book", content);
var responseString = await response.Content.ReadAsStringAsync();
return responseString;
}
在微服務 B 中:
[HttpPost("Favorites/Book")]
public IActionResult AddUserFavoriteBook(UserBookPreference bookModel)
{
try
{
_prefService.AddUserBookFavorite(bookModel);
return Ok(bookModel);
}
catch (Exception ex)
{
return BadRequest(new { message = ex.Message });
}
}
感謝您的時間。
uj5u.com熱心網友回復:
您需要在端點[FromBody]之前添加屬性或向控制器添加屬性以系結到傳入正文。碼頭UserBookPreference[ApiController]UserBookPreference
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/458725.html
上一篇:Linq/XML查詢的問題
