casdoor/web/src/auth/AuthBackend.js

67 lines
2.1 KiB
JavaScript
Raw Normal View History

2021-02-13 12:15:19 +08:00
// Copyright 2020 The casbin Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
2021-02-14 16:59:08 +08:00
import {authConfig} from "./Auth";
2021-02-14 15:51:56 +08:00
2021-02-13 12:15:19 +08:00
export function getAccount() {
2021-02-14 16:59:08 +08:00
return fetch(`${authConfig.serverUrl}/api/get-account`, {
2021-02-13 12:15:19 +08:00
method: 'GET',
credentials: 'include'
}).then(res => res.json());
}
export function register(values) {
2021-02-14 16:59:08 +08:00
return fetch(`${authConfig.serverUrl}/api/register`, {
2021-02-13 12:15:19 +08:00
method: 'POST',
credentials: "include",
body: JSON.stringify(values),
}).then(res => res.json());
}
export function login(values) {
2021-02-14 16:59:08 +08:00
return fetch(`${authConfig.serverUrl}/api/login`, {
2021-02-13 12:15:19 +08:00
method: 'POST',
credentials: "include",
body: JSON.stringify(values),
}).then(res => res.json());
}
export function logout() {
2021-02-14 16:59:08 +08:00
return fetch(`${authConfig.serverUrl}/api/logout`, {
2021-02-13 12:15:19 +08:00
method: 'POST',
credentials: "include",
}).then(res => res.json());
}
2021-02-14 00:22:24 +08:00
2021-02-14 21:21:42 +08:00
export function authLogin(applicationName, providerName, code, state, redirectUrl, method) {
return fetch(`${authConfig.serverUrl}/api/auth/login?application=${applicationName}&provider=${providerName}&code=${code}&state=${state}&redirect_url=${redirectUrl}&method=${method}`, {
2021-02-14 00:22:24 +08:00
method: 'GET',
credentials: 'include',
}).then(res => res.json());
}
2021-02-14 16:59:08 +08:00
export function getApplication(owner, name) {
return fetch(`${authConfig.serverUrl}/api/get-application?id=${owner}/${encodeURIComponent(name)}`, {
method: "GET",
credentials: "include"
}).then(res => res.json());
}
2021-02-15 23:28:25 +08:00
export function getUsers(owner) {
return fetch(`${authConfig.serverUrl}/api/get-users?owner=${owner}`, {
method: "GET",
credentials: "include"
}).then(res => res.json());
}