问题描述
使用ApiController,Authentication.Challenge不提示Microsoft登录SSO。它执行SignIn操作方法,没有任何错误。如果我从ApiController更改为 Controller ,则会出现提示。有谁知道如何使用ApiController提示Microsoft登录吗?
公共类ValuesController: ApiController {
data = {
"Ready Date":"2020-01-31T12:00:00","Ready Time":"2020-01-31T12:00:00","Delivery Date":"2020-02-15T12:00:00","Service Level":"EC","Close Time":"2020-01-31T17:00:00"}
a = ["Ready Date","Ready Time","DeliveryDate","Service Level","Close Time"]
missing = [field for field in a if field not in data]
if len(missing) == 0:
print("All values are entered")
else:
[print(f"Missing value: {field}") for field in missing]
公共类ValuesController: Controller {
[System.Web.Http.Route("api/values/signin")]
[System.Web.Http.HttpGet]
public void SignIn()
{
if (!System.Web.HttpContext.Current.Request.IsAuthenticated)
{
HttpContext.Current.GetOwinContext().Authentication.Challenge(
new AuthenticationProperties { RedirectUri = "/" },OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)