我通过简洁地阅读ASP.NET Web API来刷新我的Web API知识。它有一个使用Postman获取应用程序预定义数据的简单示例,使用Get动词将以下内容输入Postman:
http://localhost:52194/api/values
Web API正在运行,并在我的(Chrome)浏览器中显示“ http://localhost:52194/ ”。
从Postman发送上述Get verbed URL会导致Postman中的“401 Unauthorized”。
理论上,我应该看到:
[
"value1",
"value2"
]
...因为应用程序中存在此代码:
namespace PlatypusWebReports.Controllers
{
[Authorize]
public class ValuesController : ApiController
{
// GET api/values
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
. . .
为什么我会得到“401”,我该如何预防?
答案 0 :(得分:3)
您遇到此错误,因为您使用“授权”属性标记了控制器类。如果您确实不需要此API的授权,请删除此属性。