mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-04-05 17:38:01 +08:00
优化api异常提示;
优化授权菜单加载逻辑
This commit is contained in:
parent
a631e15d7e
commit
7989b4e563
BIN
DOC/核心设计.EAP
BIN
DOC/核心设计.EAP
Binary file not shown.
@ -50,7 +50,12 @@ namespace OpenAuth.App.SSO
|
||||
try
|
||||
{
|
||||
var value = _helper.Get(null, requestUri);
|
||||
return Boolean.Parse(value);
|
||||
var result = JsonHelper.Instance.Deserialize<Response<bool>>(value);
|
||||
if (result.Code == 200)
|
||||
{
|
||||
return result.Result;
|
||||
}
|
||||
throw new Exception(result.Message);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@ -81,8 +86,13 @@ namespace OpenAuth.App.SSO
|
||||
|
||||
try
|
||||
{
|
||||
var value = _helper.Get<UserWithAccessedCtrls>(null, requestUri);
|
||||
return value;
|
||||
var value = _helper.Get(null, requestUri);
|
||||
var result = JsonHelper.Instance.Deserialize<Response<UserWithAccessedCtrls>>(value);
|
||||
if (result.Code == 200)
|
||||
{
|
||||
return result.Result;
|
||||
}
|
||||
throw new Exception(result.Message);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@ -103,8 +113,13 @@ namespace OpenAuth.App.SSO
|
||||
|
||||
try
|
||||
{
|
||||
var value = _helper.Get<string>(null, requestUri);
|
||||
return value;
|
||||
var value = _helper.Get(null, requestUri);
|
||||
var result = JsonHelper.Instance.Deserialize<Response<string>>(value);
|
||||
if (result.Code == 200)
|
||||
{
|
||||
return result.Result;
|
||||
}
|
||||
throw new Exception(result.Message);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -23,29 +23,6 @@ namespace OpenAuth.Mvc.Controllers
|
||||
return View();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 所有页面按钮控制分部视图
|
||||
/// </summary>
|
||||
/// <returns>ActionResult.</returns>
|
||||
[ChildActionOnly]
|
||||
public ActionResult MenuHeader()
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
foreach (var element in CurrentModule.Elements)
|
||||
{
|
||||
sb.Append("<button "
|
||||
+ " data-type='" + element.DomId + "' "
|
||||
+ " class='layui-btn layui-btn-small " + element.Class + "' "
|
||||
+ element.Attr
|
||||
+ ">");
|
||||
if (!string.IsNullOrEmpty(element.Icon))
|
||||
{
|
||||
sb.Append("<i class='layui-icon'>" + element.Icon + "</i>");
|
||||
}
|
||||
sb.Append(element.Name + "</button>");
|
||||
}
|
||||
ViewBag.Buttons = sb.ToString();
|
||||
return View();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -70,6 +70,13 @@ namespace OpenAuth.Mvc.Controllers
|
||||
return JsonHelper.Instance.Serialize(menus);
|
||||
}
|
||||
|
||||
|
||||
public string LoadAuthorizedMenus()
|
||||
{
|
||||
return JsonHelper.Instance.Serialize(CurrentModule.Elements);
|
||||
}
|
||||
|
||||
|
||||
#region 添加编辑模块
|
||||
|
||||
//添加模块
|
||||
|
@ -623,7 +623,6 @@
|
||||
<Content Include="Views\Shared\_FlowForm.cshtml" />
|
||||
<Content Include="Views\Home\Main.cshtml" />
|
||||
<Content Include="Views\Shared\_Layout.cshtml" />
|
||||
<Content Include="Views\Home\MenuHeader.cshtml" />
|
||||
<Content Include="Views\Categories\Index.cshtml" />
|
||||
<Content Include="Views\ModuleManager\Assign.cshtml" />
|
||||
<Content Include="Views\RoleManager\Index.cshtml" />
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id="menus">
|
||||
</blockquote>
|
||||
|
||||
<div style="display: flex;">
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id="menus">
|
||||
</blockquote>
|
||||
|
||||
<div class="layui-row">
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id="menus">
|
||||
</blockquote>
|
||||
|
||||
|
||||
|
@ -1,8 +0,0 @@
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
@Html.Raw(ViewBag.Buttons)
|
||||
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id="menus">
|
||||
</blockquote>
|
||||
|
||||
<div style="display: flex;">
|
||||
@ -69,7 +68,7 @@
|
||||
|
||||
<!--模块添加/编辑窗口-->
|
||||
<div id="divEdit" style="display: none">
|
||||
<form class="layui-form" action="" id="formEdit">
|
||||
<form class="layui-form layui-form-pane" action="" id="formEdit">
|
||||
|
||||
<input type="hidden" name="Id" v-model="Id" />
|
||||
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id ="menus">
|
||||
</blockquote>
|
||||
|
||||
<div class="layui-row">
|
||||
@ -38,7 +37,7 @@
|
||||
|
||||
<!--用户添加/编辑窗口-->
|
||||
<div id="divEdit" style="display: none">
|
||||
<form class="layui-form" action="" id="formEdit">
|
||||
<form class="layui-form layui-form-pane" action="" id="formEdit">
|
||||
|
||||
<input type="hidden" name="Id" v-model="Id" />
|
||||
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id ="menus">
|
||||
</blockquote>
|
||||
|
||||
<div class="layui-row">
|
||||
@ -33,7 +32,7 @@
|
||||
|
||||
<!--角色添加/编辑窗口-->
|
||||
<div id="divEdit" style="display: none">
|
||||
<form class="layui-form" action="" id="formEdit">
|
||||
<form class="layui-form layui-form-pane" action="" id="formEdit">
|
||||
|
||||
<input type="hidden" name="Id" v-model="Id" />
|
||||
|
||||
@ -55,7 +54,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-form-item" pane>
|
||||
<label class="layui-form-label">是否可用</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="checkbox" name="Status" v-model="Status" lay-skin="switch" value="1">
|
||||
|
@ -2,8 +2,7 @@
|
||||
{
|
||||
<link rel="stylesheet" href="/css/treetable.css" />
|
||||
}
|
||||
<blockquote class="layui-elem-quote news_search toolList">
|
||||
@Html.Action("MenuHeader", "Home")
|
||||
<blockquote class="layui-elem-quote news_search toolList" id="menus">
|
||||
</blockquote>
|
||||
|
||||
<div class="layui-row">
|
||||
|
@ -3,25 +3,56 @@ layui.define("jquery", function (exports) {
|
||||
var jQuery = layui.jquery,
|
||||
$ = layui.jquery;
|
||||
|
||||
//获取url的参数值
|
||||
$.getUrlParam = function (name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
var r = window.location.search.substr(1).match(reg);
|
||||
if (r != null) return unescape(r[2]); return null;
|
||||
}
|
||||
//获取url的参数值
|
||||
$.getUrlParam = function (name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
var r = window.location.search.substr(1).match(reg);
|
||||
if (r != null) return unescape(r[2]); return null;
|
||||
}
|
||||
|
||||
//把name/value的数组转为obj对象
|
||||
$.arrayToObj = function(array) {
|
||||
var result = {};
|
||||
for (var i = 0; i < array.length; i++) {
|
||||
var field = array[i];
|
||||
if (field.name in result) {
|
||||
result[field.name] += ',' + field.value;
|
||||
} else {
|
||||
result[field.name] = field.value;
|
||||
}
|
||||
//把name/value的数组转为obj对象
|
||||
$.arrayToObj = function (array) {
|
||||
var result = {};
|
||||
for (var i = 0; i < array.length; i++) {
|
||||
var field = array[i];
|
||||
if (field.name in result) {
|
||||
result[field.name] += ',' + field.value;
|
||||
} else {
|
||||
result[field.name] = field.value;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
//加载菜单
|
||||
$.fn.extend({
|
||||
loadMenus: function () {
|
||||
var dom = $(this);
|
||||
$.ajax("/ModuleManager/LoadAuthorizedMenus",
|
||||
{
|
||||
async: false
|
||||
, success: function (data) {
|
||||
var obj = JSON.parse(data);
|
||||
var sb = '';
|
||||
$.each(obj,
|
||||
function () {
|
||||
var element = this;
|
||||
sb += ("<button " + " data-type='" + element.DomId +
|
||||
"' " + " class='layui-btn layui-btn-small " + element.Class +
|
||||
"' " + element.Attr + ">");
|
||||
|
||||
if (element.Icon != null && element.Icon != '') {
|
||||
sb += ("<i class='layui-icon'>" + element.Icon + "</i>");
|
||||
}
|
||||
sb += (element.Name + "</button>");
|
||||
});
|
||||
|
||||
dom.html(sb);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
exports('utils');
|
||||
});
|
@ -1,12 +1,14 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer,
|
||||
$ = layui.jquery;
|
||||
var table = layui.table;
|
||||
var openauth = layui.openauth;
|
||||
layui.droptree("/Categories/AllTypes", "#TypeName", "#TypeId", false);
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = (top == undefined || top.layer === undefined )? layui.layer : top.layer,
|
||||
$ = layui.jquery;
|
||||
@ -8,6 +8,8 @@
|
||||
var openauth = layui.openauth;
|
||||
var thiswin = (top == undefined) ? window : top.window;
|
||||
layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
@ -70,7 +72,7 @@
|
||||
|
||||
layer.open({
|
||||
type: 2,
|
||||
area: ['750px', '550px'], //宽高
|
||||
area: ['800px', '700px'], //宽高
|
||||
maxmin: true, //开启最大化最小化按钮
|
||||
title: title,
|
||||
content: '/flowInstances/edit?id=' + data.Id,
|
||||
|
@ -169,6 +169,7 @@ layui.config({
|
||||
return false; //阻止表单跳转。
|
||||
});
|
||||
|
||||
flowDesignPanel.reinitSize($(window).width() - 30, $(window).height() - 100);
|
||||
$(window).resize(function () {
|
||||
flowDesignPanel.reinitSize($(window).width() - 30, $(window).height() - 100);
|
||||
});
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form', 'vue', 'ztree', 'layer', 'jquery', 'table', 'droptree', 'openauth'], function () {
|
||||
}).use(['form', 'vue', 'ztree', 'layer', 'jquery', 'table', 'droptree', 'openauth','utils'], function () {
|
||||
var form = layui.form, element = layui.element,
|
||||
layer = (top == undefined || top.layer === undefined )? layui.layer : top.layer,
|
||||
$ = layui.jquery;
|
||||
@ -10,6 +10,8 @@
|
||||
|
||||
layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config = {}; //table的参数,如搜索key,点击tree的id
|
||||
var mainList = function (options) {
|
||||
@ -71,7 +73,7 @@
|
||||
|
||||
layer.open({
|
||||
type: 2,
|
||||
area: ['600px', '500px'], //宽高
|
||||
area: ['800px', '700px'], //宽高
|
||||
maxmin: true, //开启最大化最小化按钮
|
||||
title: title,
|
||||
content: '/flowschemes/design?id='+data.Id,
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
element = layui.element,
|
||||
layer = (top == undefined || top.layer === undefined )? layui.layer : top.layer,
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
|
||||
layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");
|
||||
|
||||
$("#menus").loadMenus();
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
var mainList = function (options) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer,
|
||||
$ = layui.jquery;
|
||||
@ -8,6 +8,8 @@ layui.config({
|
||||
var openauth = layui.openauth;
|
||||
layui.droptree("/UserSession/QueryModuleList", "#ParentName", "#ParentId", false);
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
var mainList = function (options) {
|
||||
|
@ -1,12 +1,14 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer,
|
||||
$ = layui.jquery;
|
||||
var table = layui.table;
|
||||
var openauth = layui.openauth;
|
||||
layui.droptree("/UserSession/GetOrgs", "#ParentName", "#ParentId", false);
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer,
|
||||
$ = layui.jquery;
|
||||
@ -8,6 +8,8 @@ layui.config({
|
||||
var openauth = layui.openauth;
|
||||
layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
var mainList = function (options) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
layui.config({
|
||||
base: "/js/"
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth'], function () {
|
||||
}).use(['form','vue', 'ztree', 'layer', 'jquery', 'table','droptree','openauth','utils'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer,
|
||||
$ = layui.jquery;
|
||||
@ -8,6 +8,8 @@ layui.config({
|
||||
var openauth = layui.openauth;
|
||||
layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");
|
||||
|
||||
$("#menus").loadMenus();
|
||||
|
||||
//主列表加载,可反复调用进行刷新
|
||||
var config= {}; //table的参数,如搜索key,点击tree的id
|
||||
var mainList = function (options) {
|
||||
|
@ -11,6 +11,7 @@
|
||||
|
||||
using System;
|
||||
using System.Web.Http;
|
||||
using Infrastructure;
|
||||
using Infrastructure.Cache;
|
||||
using OpenAuth.App;
|
||||
using OpenAuth.App.SSO;
|
||||
@ -28,20 +29,26 @@ namespace OpenAuth.WebApi.Areas.SSO.Controllers
|
||||
public AuthorizeApp _app { get; set; }
|
||||
private ObjCacheProvider<UserAuthSession> _objCacheProvider = new ObjCacheProvider<UserAuthSession>();
|
||||
|
||||
/// <summary>
|
||||
/// 检验token是否有效
|
||||
/// </summary>
|
||||
/// <param name="token">The token.</param>
|
||||
/// <param name="requestid">备用参数.</param>
|
||||
/// <summary>
|
||||
/// 检验token是否有效
|
||||
/// </summary>
|
||||
/// <param name="token">The token.</param>
|
||||
/// <param name="requestid">备用参数.</param>
|
||||
[System.Web.Mvc.HttpGet]
|
||||
public bool GetStatus(string token, string requestid = "")
|
||||
public Response<bool> GetStatus(string token, string requestid = "")
|
||||
{
|
||||
if (_objCacheProvider.GetCache(token) != null)
|
||||
var result = new Response<bool>();
|
||||
try
|
||||
{
|
||||
return true;
|
||||
result.Result = _objCacheProvider.GetCache(token) != null;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Code = 500;
|
||||
result.Message = ex.Message;
|
||||
}
|
||||
|
||||
return false;
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -50,15 +57,25 @@ namespace OpenAuth.WebApi.Areas.SSO.Controllers
|
||||
/// <param name="token"></param>
|
||||
/// <param name="requestid">备用参数.</param>
|
||||
[System.Web.Mvc.HttpGet]
|
||||
public UserWithAccessedCtrls GetUser(string token, string requestid = "")
|
||||
public Response<UserWithAccessedCtrls> GetUser(string token, string requestid = "")
|
||||
{
|
||||
string userName = GetUserName(token, requestid);
|
||||
if (!string.IsNullOrEmpty(userName))
|
||||
{
|
||||
return _app.GetAccessedControls(userName);
|
||||
var result = new Response<UserWithAccessedCtrls>();
|
||||
try
|
||||
{
|
||||
var user = _objCacheProvider.GetCache(token);
|
||||
if (user != null)
|
||||
{
|
||||
result.Result = _app.GetAccessedControls(user.UserName);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Code = 500;
|
||||
result.Message = ex.Message;
|
||||
}
|
||||
|
||||
return null;
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -67,15 +84,24 @@ namespace OpenAuth.WebApi.Areas.SSO.Controllers
|
||||
/// <param name="token"></param>
|
||||
/// <param name="requestid">备用参数.</param>
|
||||
[System.Web.Mvc.HttpGet]
|
||||
public string GetUserName(string token, string requestid = "")
|
||||
public Response<string> GetUserName(string token, string requestid = "")
|
||||
{
|
||||
var user = _objCacheProvider.GetCache(token);
|
||||
if (user != null)
|
||||
{
|
||||
return user.UserName;
|
||||
var result = new Response<string>();
|
||||
try
|
||||
{
|
||||
var user = _objCacheProvider.GetCache(token);
|
||||
if (user != null)
|
||||
{
|
||||
result.Result = user.UserName;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Code = 500;
|
||||
result.Message = ex.Message;
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -85,8 +111,19 @@ namespace OpenAuth.WebApi.Areas.SSO.Controllers
|
||||
/// <returns></returns>
|
||||
[System.Web.Mvc.HttpPost]
|
||||
public LoginResult Login(PassportLoginRequest request)
|
||||
{
|
||||
return SSOAuthUtil.Parse(request);
|
||||
{
|
||||
var result = new LoginResult();
|
||||
try
|
||||
{
|
||||
result = SSOAuthUtil.Parse(request);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Code = 500;
|
||||
result.Message = ex.Message;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -95,7 +132,7 @@ namespace OpenAuth.WebApi.Areas.SSO.Controllers
|
||||
/// <param name="token"></param>
|
||||
/// <param name="requestid">备用参数.</param>
|
||||
[System.Web.Mvc.HttpPost]
|
||||
public bool Logout(string token, string requestid="")
|
||||
public bool Logout(string token, string requestid = "")
|
||||
{
|
||||
try
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user