今天用postman测试后端api,总是报错,下面是问题解决方案。

一、测试方法

public ApiResult Get(int id)
{
ApiResult result = new ApiResult();

result.data = "我是Get方法返回的数据";
result.success = true;
result.msg = "测试成功";

return result;
}

public class ApiResult
{
public bool success { get; set; }

public string msg { get; set; }

public object data { get; set; }
}

二、问题和解决

0请求:http://localhost/projectmanagement/api/user/5

在网上查了下请求要这么写:http://localhost/projectmanagement/api/user/?id=5

1 提示没有权限

去路由里面一看,前辈重新了校验规则,不知道。为了测试方法我注释的校验规则。

public static void Register(HttpConfiguration config)
{
// Web API 配置和服务

// Web API 路由
config.MapHttpAttributeRoutes();

config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
// config.Filters.Add(new AppAuthorizeAttribute());

}

2   "Message": "请求的资源不支持 http 方法“GET”。"

请求

解决:在方法代码上一行 添加 [HttpGet]

3 又报 "Message": "请求的资源不支持 http 方法“GET”。"

解决:同时在多个方法代码 添加 [HttpGet],必须取别名 ,例如 [Route("Get")]

请求也要加别名:http://localhost/projectmanagement/api/user/get/?id=5

http://localhost/projectmanagement/api/user/First/?id=5

然后还是报错。

解决:使用别名时,必须在控制器类上面加前缀    [RoutePrefix("api/User")]

三、完整测试代码

using ProjectManagement.BLL;
using ProjectManagement.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http; namespace ProjectManagement.Controllers
{
[RoutePrefix("api/User")]
public class UserController : ApiController
{ [HttpGet]
[Route("First")]
public ApiResult First(int id)
{
ApiResult result = new ApiResult(); result.data = "我是First方法返回的数据";
result.success = true;
result.msg = "测试成功"; return result;
} [HttpGet]
[Route("Get")]
public ApiResult Get(int id)
{
ApiResult result = new ApiResult(); result.data = "我是Get方法返回的数据";
result.success = true;
result.msg = "测试成功"; return result;
} }
}

  

Message": "请求的资源不支持 http 方法“GET”的更多相关文章

  1. HTTP状态码和支持的方法

    1. HTTP常用状态码   200 ok 客户端请求成功 400 bad request 客户端请求有语法错误,不能被服务器所理解 401 unauthorized 请求要求身份验证,对于登录后请求 ...

  2. Spring3 MVC请求参数获取的几种方法

    Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}&q ...

  3. HTTP请求415错误 – 不支持的媒体类型(Unsupported media type)

    HTTP请求415错误 – 不支持的媒体类型(Unsupported media type) 通常有以下情况: 1:检查你的 http 请求头信息,比如 因为 User-Agent 被服务器设置 拒绝 ...

  4. [转]在Arcmap中加载互联网地图资源的4种方法

    转自http://blog.3snews.net/space.php?uid=6955280&do=blog&id=67981 前一段时间想在Arcmap中打开互联网地图中的地图数据, ...

  5. ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限

    开发了一个导入TXT文件的功能,执行过程中出错.提示:.....ASP.NET 未被授权访问所请求的资源.请考虑授予 ASP.NET 请求标识访问此资源的权限.ASP.NET 有一个在应用程序没有模拟 ...

  6. 在Arcmap中加载互联网地图资源的4种方法

    前一段时间想在Arcmap中打开互联网地图中的地图数据,如影像数据.基础地图数据等,经过简单研究目前总结了四种方法,整理下与大家分享,有些内容可能理解有误,希望大家多多指教.4种方法如下: a)    ...

  7. python通过get,post方式发送http请求和接收http响应的方法,pythonget

    python通过get,post方式发送http请求和接收http响应的方法,pythonget 本文实例讲述了python通过get,post方式发送http请求和接收http响应的方法.分享给大家 ...

  8. Web服务器(容器)请求常见的错误及其解决方法

    首先我们来看看容器如何找到service()方法?(1)当在浏览器中输入 http://localhost:8080/firstweb/sayHi 这个地址后,容器是如何找到 HelloServlet ...

  9. Spring3 MVC请求参数获取的几种方法[转]

    Spring3 MVC请求参数获取的几种方法 Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value=& ...

随机推荐

  1. QT汇总

    1.QT介绍及其在Linux下的安装 2.windows下安装QT并与visual studio 2017搭建开发环境 参考资料: QT官网资料 QT实战一二三 Qt资料大全 <Qt 实战一二三 ...

  2. spring 框架学习网站

    spring 框架学习网站 NO1 http://www.mkyong.com NO2 https://spring.io/docs/reference

  3. 轻松读懂IL

    轻松读懂IL先说说学IL有什么用,有人可能觉得这玩意平常写代码又用不上,学了有个卵用.到底有没有卵用呢,暂且也不说什么学了可以看看一些语法糖的实现,或对.net理解更深一点这些虚头巴脑的东西.最重要的 ...

  4. 【.NET Core项目实战-统一认证平台】第六章 网关篇-自定义客户端授权

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章我们介绍了网关使用Redis进行缓存,并介绍了如何进行缓存实现,缓存信息清理接口的使用.本篇我们将介绍如何实现网关自定义客户端授权, ...

  5. SharedPreferences解析

    一.概述 SharedPreferences(简称SP)是Android中很常用的数据存储方式,SP采用key-value(键值对)形式,主要用于轻量级的数据存储,尤其适合保存应用的配置参数,但不建议 ...

  6. Numpy学习一:ndarray数组对象

    NumPy是Python的一个高性能科学计算和数据分析基础库,提供了功能强大的多维数组对象ndarray.jupyter notebook快速执行代码的快捷键:鼠标点击选中要指定的代码框,Shift ...

  7. 【spring】task 任务调度(定时任务)

    1.定时任务的几种实现可以看这里:http://gong1208.iteye.com/blog/1773177 2.需要导入spring的jar包,可以参看之前的[spring]相关文章 3.这里使用 ...

  8. python基础-字符串(6)

    一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...

  9. [EXP]windows全版本SMB溢出工具加强版

    工具:k8加强版zzz 编译:python 漏洞:MS17-010 用法: zzz_exploit.exe 192.11.22.82zzz_exploit.exe 192.11.22.82 exe参数 ...

  10. Java中的enum枚举类

    首先说说为什么要写这个enum枚举类吧,是群里有个新手问:怎样把enum类中的值遍历得到,其实自己用的也很少.自己也是确实不知道,于是我去网上搜了不少,总结了些,希望对大家有帮助:首先我说说怎样遍历枚 ...