asp.net-web-api - 我收到错误 401 : unauthorized when accessing my web API

标签 asp.net-web-api windows-authentication

我正在尝试运行我的一个 Web 应用程序 API,但当提示输入用户名和密码时,它响应 401 访问被拒绝。我尝试过从 NTLM 更改为 Kerberos。它仍然行不通。我是 SharePoint 新手。

这就是我调用 API 的方式:

var json = $.ajax({
        url: (serviceType == "wcf" ? wcfServicesUrl : servicesApi) + wcfServiceUri,
        type: type,
        data: data,        
        crossDomain: true,
        contentType: "application/json",
        dataType: "json",
        xhrFields: {
            withCredentials: true
        }
)};

最佳答案

您需要在 IIS 中调整 Web API 应用程序的身份验证设置。

IIS Screenshot

根据您想要执行的操作,您可能需要启用其中一个或多个选项。

您的应用程序池身份也发挥着作用。确保他们的用户获得适当的授权来访问您的内容/数据/等。

更新:将 Windows 身份验证设置为“启用”,确保禁用所有其他身份验证。不要使用 Kerberos。将您的网络应用程序的 URL 添加到浏览器中的受信任站点。

关于asp.net-web-api - 我收到错误 401 : unauthorized when accessing my web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42639860/

相关文章:

node.js - 使用 Windows 身份验证登录 Angular App

pdf - 通过 Web 应用程序自动化 PDF 签名

javascript - 如何向 webAPI 应用程序正确发送 PUT 请求?

angularjs - ag-grid 不显示任何数据

c# - 网络核心 |扩展 Windows 身份验证身份对象

javascript - 检查 Windows 身份验证是否可用于 JavaScript

ASP.NET MVC 如何创建自定义角色提供程序

c# - ReadAsAsync 调用 WebAPI 不将 json 重构为类

c# - ASP Core WebApi 文件上传允许所有内容类型

asp.net-web-api - 反向 NuGet 查找