我有一个web api控制器,我需要在Java客户端使用它,但是证书有问题,所以我需要使用HTTP而不是HTTPS。
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
constraints : null,
defaults: new { id = RouteParameter.Optional }
);
config.Formatters.Remove(config.Formatters.XmlFormatter);
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"));
}
}
public class CommentAPIController : ApiController
{
IItemService ise = new ItemService();
ICategoryService ice = new CategoryService();
// GET: api/CommentAPI
[HttpGet]
public IEnumerable<Category> Get()
{
List<Category> list = new List<Category>();
foreach (Category item in ice.getAllCategory())
{
list.Add(item);
}
return list;
}
感谢您的帮助
答案 0 :(得分:0)
请编辑web api项目的属性(右键单击项目,然后单击属性,或展开项目内容,然后双击“属性”组)。
然后导航至Web
屏幕,查看您的任何网址是否指向https
。
如果是,请将其更改为http://并重新启动。通常,您必须使用[RequireHttps]
属性强制使用https,因此您的问题恰恰相反。
根据我们在评论中的讨论。最后,您一直在为HTTPS服务提供错误的端口,这是我指向的确切屏幕。
让我们把它留在其他地方。