【发布时间】:2021-06-25 03:59:49
【问题描述】:
我用 ASP.NET Core 制作了一些 API。
然后其中一个 API 需要访问 3rd 方 API。我该怎么做?
比方说,第 3 方 API 提供带有 3 个参数(姓名、地址、电话)的 JSON 格式。第 3 方 API 是插入到表中。
我的 API 将向第 3 方 API 发送 JSON 格式。如何从我的 API 中使用它?
以下是我的 API 代码之一:
控制器:
[HttpPost]
public async Task<IActionResult> InsertUpdate(Devloperr model)
{
try
{
var result = await repo.InsertUpdate(model);
if (result > 0)
{
return Ok("Data has been saved");
}
return Ok("Data not saved");
}
catch (Exception e) { return StatusCode(500, e.Message); }
}
存储库:
public async Task<int> InsertUpdate(Devloperr model)
{
mySqlConnection.Open();
var cmd = mySqlConnection.CreateCommand();
cmd.CommandText = @"SELECT `ID` FROM `Table1` WHERE `ID` =@ID";
var data = await mySqlConnection.QueryAsync<Devloperr>(cmd.CommandText, param: new { ID = model.ID } );
if (data.Count() == 1)
{
cmd.CommandText = @"UPDATE `Table1` SET `ID` = @ID, `NAMA` = @NAMA, `USERNAME` = @USERNAME WHERE `ID`=@ID ;";
parameters.AddDynamicParams(model);
var result = await mySqlConnection.ExecuteAsync(cmd.CommandText, parameters, commandType: sql);
return result;
}
else
{
cmd.CommandText = @"INSERT INTO `Table1`(`ID`,`NAMA`,`USERNAME`) VALUES (@ID, @NAMA, @USERNAME);";
parameters.AddDynamicParams(model);
var result = await mySqlConnection.ExecuteAsync(cmd.CommandText, parameters, commandType: sql);
return result;
}
}
请指教。谢谢。
【问题讨论】:
-
您可以参考此文档向第三方 API 发出带有预期数据的 HTTP 请求:docs.microsoft.com/en-us/aspnet/core/fundamentals/…
-
我今天刚刚回答了一个非常 similar question 的问题。
标签: c# .net api asp.net-core