summaryrefslogtreecommitdiff
path: root/packages/frontend/src/scripts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-12-09 12:58:00 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2023-12-09 12:58:00 +0900
commitfcf0f5f6b52efc9d7c42d4968de5590554b042f9 (patch)
treed210acd9028643273259987ac1a56981d4318146 /packages/frontend/src/scripts
parentchore: labelerが治っていなかったのを修正 (#12610) (diff)
downloadsharkey-fcf0f5f6b52efc9d7c42d4968de5590554b042f9.tar.gz
sharkey-fcf0f5f6b52efc9d7c42d4968de5590554b042f9.tar.bz2
sharkey-fcf0f5f6b52efc9d7c42d4968de5590554b042f9.zip
fix(frontend): disable Mk:apiExternal
Diffstat (limited to 'packages/frontend/src/scripts')
-rw-r--r--packages/frontend/src/scripts/aiscript/api.ts2
-rw-r--r--packages/frontend/src/scripts/api.ts48
2 files changed, 2 insertions, 48 deletions
diff --git a/packages/frontend/src/scripts/aiscript/api.ts b/packages/frontend/src/scripts/aiscript/api.ts
index fb7ab924b7..038ae23109 100644
--- a/packages/frontend/src/scripts/aiscript/api.ts
+++ b/packages/frontend/src/scripts/aiscript/api.ts
@@ -50,6 +50,7 @@ export function createAiScriptEnv(opts) {
return values.ERROR('request_failed', utils.jsToVal(err));
});
}),
+ /* セキュリティ上の問題があるため無効化
'Mk:apiExternal': values.FN_NATIVE(async ([host, ep, param, token]) => {
utils.assertString(host);
utils.assertString(ep);
@@ -60,6 +61,7 @@ export function createAiScriptEnv(opts) {
return values.ERROR('request_failed', utils.jsToVal(err));
});
}),
+ */
'Mk:save': values.FN_NATIVE(([key, value]) => {
utils.assertString(key);
miLocalStorage.setItem(`aiscript:${opts.storageKey}:${key.value}`, JSON.stringify(utils.valToJs(value)));
diff --git a/packages/frontend/src/scripts/api.ts b/packages/frontend/src/scripts/api.ts
index 0f54f779a6..8f3a163938 100644
--- a/packages/frontend/src/scripts/api.ts
+++ b/packages/frontend/src/scripts/api.ts
@@ -56,54 +56,6 @@ export function api<E extends keyof Misskey.Endpoints, P extends Misskey.Endpoin
return promise;
}
-export function apiExternal<E extends keyof Misskey.Endpoints, P extends Misskey.Endpoints[E]['req']>(
- hostUrl: string,
- endpoint: E, data: P = {} as any,
- token?: string | null | undefined,
- signal?: AbortSignal,
-): Promise<Misskey.api.SwitchCaseResponseType<E, P>> {
- if (!/^https?:\/\//.test(hostUrl)) throw new Error('invalid host name');
- if (endpoint.includes('://')) throw new Error('invalid endpoint');
- pendingApiRequestsCount.value++;
-
- const onFinally = () => {
- pendingApiRequestsCount.value--;
- };
-
- const promise = new Promise<Misskey.Endpoints[E]['res'] | void>((resolve, reject) => {
- // Append a credential
- (data as any).i = token;
-
- const fullUrl = (hostUrl.slice(-1) === '/' ? hostUrl.slice(0, -1) : hostUrl)
- + '/api/' + (endpoint.slice(0, 1) === '/' ? endpoint.slice(1) : endpoint);
- // Send request
- window.fetch(fullUrl, {
- method: 'POST',
- body: JSON.stringify(data),
- credentials: 'omit',
- cache: 'no-cache',
- headers: {
- 'Content-Type': 'application/json',
- },
- signal,
- }).then(async (res) => {
- const body = res.status === 204 ? null : await res.json();
-
- if (res.status === 200) {
- resolve(body);
- } else if (res.status === 204) {
- resolve();
- } else {
- reject(body.error);
- }
- }).catch(reject);
- });
-
- promise.then(onFinally, onFinally);
-
- return promise;
-}
-
// Implements Misskey.api.ApiClient.request
export function apiGet<E extends keyof Misskey.Endpoints, P extends Misskey.Endpoints[E]['req']>(
endpoint: E,