为什么我在尝试从 Postman 访问 运行 普通(未修改)Web API 应用程序时收到 401 错误?
Why am I getting a 401 error when trying to access a running plain vanilla (unmodified) Web API app from Postman?
我正在通过简洁地阅读 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”,我该如何预防?
您出现此错误是因为您使用 Authorize 属性标记了您的控制器 class。如果您真的不需要此 API.
的授权,只需删除此属性
我正在通过简洁地阅读 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”,我该如何预防?
您出现此错误是因为您使用 Authorize 属性标记了您的控制器 class。如果您真的不需要此 API.
的授权,只需删除此属性