无论何时调用post方法,我都创建了一个Web API以创建JIRA项目。它正在成功创建项目,但是现在我不想再创建项目,但是我正在使用GET方法来验证我的API是否正常工作。 GET方法将以json格式返回响应,无论服务器在邮递员上调用时提供什么。但是它给出状态错误404。我的控制器,模型代码为:
CommonModel:
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
namespace poc.Model
{
public class inputtoJiRA
{
public string applicationName { get; set; }
public string jirakey { get; set; }
public string Projassignee { get; set; }
}
public class outputfromJIRA
{
public string message { get; set; }
}
public class RequestModel
{
public outputfromJIRA ApiCall(inputtoJiRA input)
{
try
{
using (HttpClient client = new HttpClient())
{
string url = "// URL http://IP-Address/jira/project"
HttpResponseMessage objresponse = client.PostAsJsonAsync<inputtoJiRA>(url, input).Result;
outputfromJIRA Output = new outputfromJIRA();
HttpContent content = objresponse.Content;
string message1 = string.Empty;
Task<string> responseJIRA = content.ReadAsStringAsync();
if (objresponse.IsSuccessStatusCode)
{
if (((int)objresponse.StatusCode) < 202)
{
Output.message = Convert.ToString(objresponse);
}
}
else
{
Output.message = Convert.ToString(objresponse);
}
return Output;
}
}
catch (Exception ex)
{
throw ex;
}
}
}
}
JiraController:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Policy;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using poc.Model;
namespace poc.Controllers
{
[ApiController]
public class JiraController : ControllerBase
{
// GET api/values
[Route("getjira")]
[HttpGet]
public string Get(string Id)
{
var myRoute = Url.RouteUrl(RouteData.Values);
return myRoute;
}
// POST api/values
[Route("pingjira")]
[HttpPost]
public outputfromJIRA Post([FromBody] inputtoJiRA inputjira)
{
RequestModel objreq = new RequestModel();
var result = objreq.ApiCall(inputjira);
return result;
}
}
}
当GET url调用是json格式的数据时,我得到的输出是邮递员,其中包含Index和在jira上创建的各种项目名称。 我想在运行dotnet run的某个端口上的localhost上运行时获得相同的数据。
请建议您是否需要其他详细信息。谢谢