代码拉取完成,页面将自动刷新
import {
Context,
NextFunction,
RetHandler,
} from "https://cdn.jsdelivr.net/gh/masx200/deno-http-middleware@3.3.0/mod.ts";
import { dns_records_path_name } from "./dns_records_path_name.tsx";
/**
* 使用 DNS 记录进行身份验证的中间件函数
* @param context 请求上下文
* @param next 下一个中间件函数
* @returns Promise<RetHandler> 返回处理结果
*/
export async function dns_records_authentication(
context: Context,
next: NextFunction,
): Promise<RetHandler> {
const token = Deno.env.get("token");
if (
new URL(context.request.url).pathname === dns_records_path_name()
) {
if (
("Bearer " + token) !== context.request.headers.get("Authorization")
) {
return {
status: 401,
body: "unauthorized",
headers: {
"WWW-Authenticate": 'Bearer realm="example"',
},
};
}
return await next();
}
return await next();
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。