casdoor/web/src/auth/AuthBackend.js

57 lines
1.7 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 15:59:25 +08:00
let ServerUrl = "https://door.casbin.com";
2021-02-13 12:15:19 +08:00
2021-02-14 15:59:25 +08:00
export function setAuthServerUrl(serverUrl) {
ServerUrl = serverUrl;
}
2021-02-14 15:51:56 +08:00
2021-02-13 12:15:19 +08:00
export function getAccount() {
2021-02-14 15:51:56 +08:00
return fetch(`${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 15:51:56 +08:00
return fetch(`${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 15:51:56 +08:00
return fetch(`${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 15:51:56 +08:00
return fetch(`${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 15:45:48 +08:00
export function authLogin(providerName, code, state, redirectUrl, method) {
2021-02-14 15:51:56 +08:00
return fetch(`${ServerUrl}/api/auth/login?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());
}