@有識者
このコードで致命的な欠陥とかは無さそうですか...?class MiAuth {
name: string
instance: string
permission: Array<string>
session: string
base: URL
constructor(instance: string, name: string, permission: Array<string>) {
this.instance = instance
this.name = name
this.permission = permission
this.session = String(v1.generate())
this.base = new URL("https://" + this.instance)
}
public async getToken(): Promise<string> {
const auth = new URL(join("api", "miauth", this.session, "check"), this.base.toString())
const data:Record<string, unknown> = await ky.post(auth).json()
const token = data.token
ensureString(token)
return String(token)
}
public authUrl(): string {
const params = new URLSearchParams({
name: this.name,
permission: this.permission.join(",")
})
const requestUrl = new URL(join("miauth", this.session), this.base.toString())
requestUrl.search = params.toString()
return requestUrl.toString()
}
}
Conversation
Notices
-
Embed this notice
こまもか? (comamoca@misskey.io)'s status on Saturday, 12-Nov-2022 19:24:14 JST こまもか? -
Embed this notice
こまもか? (comamoca@misskey.io)'s status on Saturday, 12-Nov-2022 19:26:04 JST こまもか? this.base = new URL("https://" + this.instance)はjoinとかだと最後の/が消える問題があったので泣く泣くこうしてる
-
Embed this notice