当前位置: 首页 > news >正文

【合集】临时邮箱网站 临时邮箱API(持续更新)

众所周知,在注册一些账户时,比较常见的验证方式就是邮箱,但是在进行一些小众和不知名网站注册时,邮箱的泄露可能预示着不休止的邮件推送。尤其是当我们只是想临时使用邮箱这种情况,第二种,批量注册账号的情况。在这两业务需求之下。我们开始另辟蹊径,临时邮箱成了我们此刻的不二选择。

1.十分钟邮箱网站 

        

        临时邮箱有时也叫10分钟邮箱,寓意着短暂和时效性,当然,作为一次性用品。我们也不用去关注历史数据的找回,能解我们当下的燃眉之急,接收邮箱验证码 即可。下面是一些最新可用,且邮件响应速度很快的一些临时邮箱:

截止2024-07-12可用:

https://mail.td/      界面简洁,速度快,多种后缀可选(推荐)

https://mailtemp.net/                       随机邮件的获取需要刷新页面,不太方便

https://email10min.com/zh        界面简洁,可以手动延长过期时间,还行

https://tenminutesmail.net/en#         和上一个一个模板,能用

https://10-minutemail.com/        界面简洁,支持手动延时

https://temp-mail.org/zh/        快跑,有广告,网速还慢

https://10minutemail.com      有广告,加载慢,使用体验不行

https://tempmail.plus/zh/#!        界面简洁,速度还行

2.临时邮箱API

        作为开发者,秉着万物皆对象的辩证思维来看待临时邮箱,那么我们就只能通过临时邮箱网址去手动申请邮箱,获取验证码吗?不能通过API对接的方式来获取吗?答案可能让你失望了。lz通过调研,暂时在网上还没发现可用的类似临时邮箱的API。

        我也想过通过解析临时邮箱的接口,将其转化为api来可供调用。但是,经过lz不懈的努力,终于发现。这个方法百分之九十九很难行得通。因为每个临时邮箱的网站或多或少针对这种行为都做了一些防范。也可能是我技不如人吧。

        直到现在,我命由我不由天,皇天不负苦心人。我终于找到了哪个百分之一的可能漏网之鱼。这个临时邮箱api提供三种接口。

1.随机获取一个邮箱

api地址:http://xxx.com/email.php?act=getRandomEmail

参数类型是否必填默认值示例值描述
actstring*getRandomEmail随机获取一个邮箱方法标识

返回结果如下:

{code: 0,msg: "随机邮箱获取成功",email: "6690e0e2a42e1@nqmo.com"
}
2. 获取邮件列表

api地址:http://xxx.com/email.php?act=getEmailMsg&email=随机邮箱

参数类型是否必填默认值示例值描述
actstring*getEmailMsg获取邮箱列表方法标识
emailstring*6690e0e2a42e1@nqmo.com获取的随机邮箱

返回结果如下:

{"email": "6690e0e2a42e1@nqmo.com","content": [{"mailbox": "6690e0e2a42e1@nqmo.com","id": "20240712T075407-1118","from": "","to": ["<6690e0e2a42e1@nqmo.com>"],"subject": "BetDog\u90ae\u7bb1\u9a8c\u8bc1\u7801","date": "2024-07-12T07:54:07.818646362Z","posix-millis": 1720770847818,"size": 2996,"seen": false}]
}
3. 获取邮件正文

api地址:http://xxx.com/email.php?act=getEmailContent&email=随机邮箱&id=邮件id

参数类型是否必填默认值示例值描述
actstring*getEmailContent获取邮件正文方法标识
emailstring*6690e0e2a42e1@nqmo.com获取的随机邮箱
idstring*20240712T075407-1118从邮件列表里获取的邮件id

返回结果如下:

{"id": "20240712T075407-1118","email": "6690e0e2a42e1@nqmo.com","content": {"mailbox": "6690e0e2a42e1@nqmo.com","id": "20240712T075407-1118","from": "","to": ["<6690e0e2a42e1@nqmo.com>"],"subject": "BetDog\u90ae\u7bb1\u9a8c\u8bc1\u7801","date": "2024-07-12T07:54:07.818646362Z","posix-millis": 1720770847818,"size": 2996,"seen": false,"body": {"text": "Dear User: \n Your verification code is 16685 Effective within 10 minutes \n Please do notshare this code with anyone, including customer service\n","html": ""},"header": {"Content-Transfer-Encoding": ["7bit"],"Content-Type": ["text\/plain; charset=\"utf-8\""],"Date": ["Fri, 12 Jul 2024 07:54:05 -0000"],"Dkim-Signature": ["v=1; a=rsa-sha256; c=relaxed\/relaxed; d=gmail.com; s=20230601; t=1720770846; x=1721375646; darn=nqmo.com; h=message-id:date:to:from:subject:content-transfer-encoding :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=RunUR39HfOwcSrg2GWBBYroIpK6PuA0s7clhxbFdDlo=; b=dcQIXH2MX9tmmCADBVSG+V00zhiOmQtm+L8mklhQRLEpDnABYYnblm0aGfgle2Jxw5 2ur8l80KsqBX0l++7\/UY3KWSNDffbWA9EFqkp0L\/kVFKQEVISts8luuWdCk30cZEr8y\/ TSxgWHedIx4BSAdYoT5+mLpQCjnEjAp70HegasgP5kVviJy\/Hn7j7WBrobZD8saODckx MORAzJ6kwg\/ZmTkioGc7ioExj78zlVV1hjsx8XsHzTefMgdFIYKsnGEAent7iQiuZgKH \/NQSTtpqfCzHSDLYYuA7g7\/9bo1qTwBgHoerCAdkCiYyXnn1IyaOykgqDOJsGn8DdbNx MUDw=="],"From": ["betdoghash@gmail.com"],"Message-Id": ["<172077084512.197768.1093321075037059396@US01-XH320V2-DS020-01>"],"Mime-Version": ["1.0"],"Received": ["from mail-io1-f54.google.com ([209.85.166.54]) by hi.mail.cx for <6690e0e2a42e1@nqmo.com>; Fri, 12 Jul 2024 07:54:07 +0000 (UTC)", "by mail-io1-f54.google.com with SMTP id ca18e2360f4ac-7fb93b2e2a3so93106739f.1 for <6690e0e2a42e1@nqmo.com>; Fri, 12 Jul 2024 00:54:07 -0700 (PDT)", "from US01-XH320V2-DS020-01 ([154.7.64.106]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-70b438c25a2sm6853095b3a.73.2024.07.12.00.54.04 for <6690e0e2a42e1@nqmo.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256\/256); Fri, 12 Jul 2024 00:54:05 -0700 (PDT)"],"Return-Path": [""],"Subject": ["=?utf-8?b?QmV0RG9n6YKu566x6aqM6K+B56CB?="],"To": ["6690e0e2a42e1@nqmo.com"],"X-Gm-Message-State": ["AOJu0YyzlIu+f72UwDJoTArPcD+MJ0bSR8XZQQCBsjGCLi\/ez56f7yTv odrHyPa\/m1VmpQTLbHdu870U9CdW+wnhSkxiygR2QF+tOeHX6t5NRp0hpg=="],"X-Google-Dkim-Signature": ["v=1; a=rsa-sha256; c=relaxed\/relaxed; d=1e100.net; s=20230601; t=1720770846; x=1721375646; h=message-id:date:to:from:subject:content-transfer-encoding :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=RunUR39HfOwcSrg2GWBBYroIpK6PuA0s7clhxbFdDlo=; b=AFMqlY90KBY+LuGpmIgAGYzp\/v0jZwPsM4DfFLsqRIgxl9pwhK09mQKcMaO4sI6wrx 8yBeo3SHaxc3tQDnrvGhlB5fYcehyDcHmBjpqy0tO0RYdeYkAQMK1lB7m5D1NOHBBx7q 1vd8\/B2lUAAenAG2Fb7GzlVPLZs7KslsXPQOwv45IK72GIN\/c85oggH+yNOIEfawse\/p wEQKg7UmGgru9JexXgkN7SnTIRXizcI+j7CtcjI0aVOpxrEnwRQ4umK+UH+FEcxeuUjW +f4NbdMTTxufScLig3XhqH2cOabZ7eBsE5XA6l6f13v\/19KQnu1ypn23GfQfiUadNIJm fJ4A=="],"X-Google-Smtp-Source": ["AGHT+IGTDsXi1odHdzaps7hzEzET1K7G\/5Xfy\/G7f1wqbNLbhNjNvwbQQpK+IrxXeeQDw16utOhGgQ=="],"X-Received": ["by 2002:a05:6e02:1d0e:b0:374:9bc4:ce1a with SMTP id e9e14a558f8ab-38a58d32cabmr130024515ab.20.1720770846180; Fri, 12 Jul 2024 00:54:06 -0700 (PDT)"]},"attachments": []}
}

3.源码分享与解析

        这个api接口是通过解析 https://mail.td/ 临时邮箱网站做出来的,老规矩,还是单个php文件,放到站点即可使用,主打就是一个方便好用。这个网站本来可以提供自定义邮箱后缀的,但是我比较懒,所以api中就不提供啦,源码我下面分享出来,各位可以自行丰富,完善。

email.php

<?php//临时邮箱:https://mail.td/
function gettoken($email){// 初始化 cURL$ch = curl_init();// 设置 cURL 选项curl_setopt($ch, CURLOPT_URL, "https://mail.td/zh/mail/".$email); // 设置请求的 URLcurl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 将响应保存到变量而不是输出curl_setopt($ch, CURLOPT_HEADER, true); // 包含头部信息// 执行 cURL 请求$response = curl_exec($ch);// 检查是否有错误发生if(curl_errno($ch)) {echo 'Curl error: ' . curl_error($ch);}// 获取响应头部信息的长度$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);// 分离头部信息和响应体$header = substr($response, 0, $header_size);// 将头部信息转换为关联数组$headerArray = [];// 解析头部信息为数组$headers = explode("\r\n", $header);foreach ($headers as $headerLine) {$pos = strpos($headerLine, ':');if ($pos !== false) {$key = substr($headerLine, 0, $pos);$value = trim(substr($headerLine, $pos + 1));$headerArray[$key] = $value;}}$string = $headerArray['set-cookie'];// 使用正则表达式匹配目标字符串$pattern = '/auth_token=([^;]+)/';if (preg_match($pattern, $string, $matches)) {$extractedString = $matches[1];return $extractedString;}// 关闭 cURL 资源curl_close($ch);
}
// 第一个方法:获取随机邮箱并发送请求
function getRandomEmail() {// 生成随机的邮箱地址,这里使用一个简单的示例$randomEmail = uniqid() . '@nqmo.com'; // 这里可以改为生成真实的随机邮箱// 构建请求的 URL$url = 'https://mail.td/_next/data/rT7saUEnIHF3_hlYJl4Io/zh/mail/' . urlencode($randomEmail) . '.json?name=' . urlencode($randomEmail);// 初始化 curl$ch = curl_init();// 设置 curl 选项curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);// 执行请求并获取返回结果$response = curl_exec($ch);// 检查是否有错误发生if(curl_errno($ch)) {$error_message = curl_error($ch);echo "Error: $error_message";}// 关闭 curl 资源curl_close($ch);$res = json_decode($response);if(isset($res->__N_SSP)){$arr = array("code"=>0,"msg"=>"随机邮箱获取成功","email"=>$randomEmail,);return $arr;}else{$arr = array("code"=>1,"msg"=>"随机邮箱获取失败","email"=>$res->__N_SSP,);return $arr;}
}// 第二个方法:接收邮箱参数并发送请求
function sendGetRequest($email) {// 构建请求的 URL$url = 'https://mail.td/api/api/v1/mailbox/' . urlencode($email);// 初始化 curl$ch = curl_init();// 设置 curl 选项curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: bearer '.gettoken($email)));// 执行请求并获取返回结果$response = curl_exec($ch);// 检查是否有错误发生if(curl_errno($ch)) {$error_message = curl_error($ch);echo "Error: $error_message";}// 关闭 curl 资源curl_close($ch);$arr = array("email"=>$email,"content"=>json_decode($response),);return $arr;
}//根据id获取邮箱内容
function getEmailContent($email,$id){// 构建请求的 URL$url = 'https://mail.td/api/api/v1/mailbox/' . urlencode($email)."/".$id;// 初始化 curl$ch = curl_init();// 设置 curl 选项curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: bearer '.gettoken($email)));// 执行请求并获取返回结果$response = curl_exec($ch);// 检查是否有错误发生if(curl_errno($ch)) {$error_message = curl_error($ch);echo "Error: $error_message";}// 关闭 curl 资源curl_close($ch);$arr = array("id"=>$id,"email"=>$email,"content"=>json_decode($response),);return $arr;
}//$res = gettoken();
// $res = getEmailContent("liuqing@nqmo.com","20240712T051842-6261");
// echo json_encode($res);if(isset($_GET["act"])){$act = $_GET["act"];if($act=='getRandomEmail'){$res =  getRandomEmail();}else if($act=='getEmailMsg'&&isset($_GET["email"])){$res = sendGetRequest($_GET["email"]);}else if($act=='getEmailContent'&&isset($_GET["email"])&&isset($_GET["id"])){$res = getEmailContent($_GET["email"],$_GET["id"]);}else{$res = array("code"=>1,"msg"=>"参数错误",);}echo json_encode($res);
}else{$res = array("code"=>1,"msg"=>"参数错误",);echo json_encode($res);
}?>

        这种提取他人接口做二次封装接口的具有一定时效性,因此,后续我会持续关注是否有其他更好的平替方式。生命不息,学习不止。

        本篇博客仅做技术分享,切勿进行任何非法行为。

 

相关文章:

【合集】临时邮箱网站 临时邮箱API(持续更新)

众所周知&#xff0c;在注册一些账户时&#xff0c;比较常见的验证方式就是邮箱&#xff0c;但是在进行一些小众和不知名网站注册时&#xff0c;邮箱的泄露可能预示着不休止的邮件推送。尤其是当我们只是想临时使用邮箱这种情况&#xff0c;第二种&#xff0c;批量注册账号的情…...

职场新人感受

互联网职场感受 阶段介绍 24届6月底毕业生&#xff0c;之前从未实习过。 岗位是后端开发&#xff08;JAVA&#xff09;&#xff0c;目前已经上班三周&#xff08;前两周看文档和做了半个简单需求&#xff0c;第三周脱产新人培训&#xff09;。 职场体验 职场和想象中的工作…...

Window 下Mamba 环境安装踩坑问题汇总及解决方法 (无需绕过selective_scan_cuda)

导航 Mamba 及 Vim 安装问题参看本人之前博客&#xff1a;Mamba 环境安装踩坑问题汇总及解决方法Linux 下Vmamba 安装教程参看本人之前博客&#xff1a;Vmamba 安装教程&#xff08;无需更改base环境中的cuda版本&#xff09;Windows 下 VMamba的安装参看本人之前博客&#xf…...

前端项目本地的node_modules直接上传到服务器上无法直接使用(node-sasa模块报错)

跑 jekins任务的服务器不能连接外网下载依赖包&#xff0c;就将本地下载的 node_modules直接上传到服务器上&#xff0c;但是运行时node-sass模块报错了ERROR in Missing binding /root/component/node_modules/node-sass/vendor/linux-x64-48/binding.node >> 报错信息类…...

Hadoop3:动态扩容之新增一台机器的初始化工作

一、需求描述 给Hadoop集群动态扩容一个节点 那么&#xff0c;这个节点是全新的&#xff0c;我们需要做哪些准备工作&#xff0c;才能将它融入集群了&#xff1f; 二、初始化配置 1、修改IP和hostname vim /etc/sysconfig/network-scripts/ifcfg-ens33 vim /etc/hostname2、…...

【正点原子i.MX93开发板试用连载体验】录音小程序采集语料

本文最早发表于电子发烧友论坛&#xff1a;【新提醒】【正点原子i.MX93开发板试用连载体验】基于深度学习的语音本地控制 - 正点原子学习小组 - 电子技术论坛 - 广受欢迎的专业电子论坛! (elecfans.com) 接下来就是要尝试训练中文提示词。首先要进行语料采集&#xff0c;这是一…...

【EasyExcel】动态替换表头内容并应用样式

1.定义实体类 import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ContentStyle; import com.alibaba.excel.metadata.BorderStyleEnum; import com.alibaba.excel.metadata.VerticalAlignmentEnum; import com.alibaba.excel.metadata.…...

RocketMQ实现分布式事务

RocketMQ的分布式事务消息功能&#xff0c;在普通消息基础上&#xff0c;支持二阶段的提交。将二阶段提交和本地事务绑定&#xff0c;实现全局提交结果的一致性。 1、生产者将消息发送至RocketMQ服务端。 2、RocketMQ服务端将消息持久化成功之后&#xff0c;向生产者返回Ack确…...

【Rust练习】2.数值类型

练习题来自https://practice-zh.course.rs/basic-types/numbers.html 1 // 移除某个部分让代码工作 fn main() {let x: i32 5;let mut y: u32 5;y x;let z 10; // 这里 z 的类型是? }y的类型不对&#xff0c;另外&#xff0c;数字的默认类型是i32 fn main() {let x: i…...

通过 PPPOE 将 linux 服务器作为本地局域网 IPv4 外网网关

将 linux 服务器作为本地外网网关&#xff0c;方便利用 Linux 生态中的各种网络工具&#xff0c;对流量进行自定义、精细化管理… 环境说明 拨号主机&#xff1a;CentOS 7.9, Linux Kernel 5.4.257 拨号软件: rp-pppoe-3.11-7.el7.x86_64初始化 1、升级系统到新的稳定内核&a…...

gin源码分析

一、高性能 使用sync.pool解决频繁创建的context对象&#xff0c;在百万并发的场景下能大大提供访问性能和减少GC // ServeHTTP conforms to the http.Handler interface. // 每次的http请求都会从sync.pool中获取context&#xff0c;用完之后归还到pool中 func (engine *Engin…...

数学建模入门

目录 文章目录 前言 一、数学建模是什么&#xff1f; 1、官方概念&#xff1a; 2、具体过程 3、适合哪一类人参加&#xff1f; 4、需要有哪些学科基础呢&#xff1f; 二、怎样准备数学建模&#xff08;必备‘硬件’&#xff09; 1.组队 2.资料搜索 3.常用算法总结 4.论文撰写的…...

【学习笔记】无人机(UAV)在3GPP系统中的增强支持(十二)-无人机群在物流中的应用

引言 本文是3GPP TR 22.829 V17.1.0技术报告&#xff0c;专注于无人机&#xff08;UAV&#xff09;在3GPP系统中的增强支持。文章提出了多个无人机应用场景&#xff0c;分析了相应的能力要求&#xff0c;并建议了新的服务级别要求和关键性能指标&#xff08;KPIs&#xff09;。…...

同三维T80006EH2-4K30编码器视频使用操作说明书:高清HDMI编码器,高清SDI编码器,4K超清HDMI编码器,双路4K超高清编码器

同三维T80006EH2-4K30编码器视频使用操作说明书&#xff1a;高清HDMI编码器&#xff0c;高清SDI编码器&#xff0c;4K超清HDMI编码器&#xff0c;双路4K超高清编码器 T80006EH2-4K30编码器 同三维&#xff0c;十多年老品牌&#xff0c;我们一直专注&#xff1a;视频采集卡、视频…...

DHCP原理及配置

目录 一、DHCP原理 DHCP介绍 DHCP工作原理 DHCP分配方式 工作原理 DHCP重新登录 DHCP优点 二、DHCP配置 一、DHCP原理 1 DHCP介绍 大家都知道&#xff0c;现在出门很多地方基本上都有WIFI&#xff0c;那么有没有想过这样一个问题&#xff0c;平时在家里都是“固定”的…...

异步日志:性能优化的金钥匙

一、背景 2024 年 4 月的一个宁静的夜晚&#xff0c;正当大家忙完一天的工作准备休息时&#xff0c;应急群里“咚咚咚”开始报警&#xff0c;提示我们余利宝业务的赎回接口成功率下降。 通过 Monitor 监控发现&#xff0c;该接口的耗时已经超过了网关配置的超时阈值(2s)&#…...

matlab仿真 模拟调制(上)

&#xff08;内容源自详解MATLAB&#xff0f;SIMULINK 通信系统建模与仿真 刘学勇编著第五章内容&#xff0c;有兴趣的读者请阅读原书&#xff09; 1.幅度调制 clear all ts0.0025; %信号抽样时间间隔 t0:ts:10-ts;%时间矢量 fs1/ts;%抽样频率 dffs/length(t); %fft的频率分…...

【数据结构】--- 堆的应用

​ 个人主页&#xff1a;星纭-CSDN博客 系列文章专栏 :数据结构 踏上取经路&#xff0c;比抵达灵山更重要&#xff01;一起努力一起进步&#xff01; 一.堆排序 在前一个文章的学习中&#xff0c;我们使用数组的物理结构构造出了逻辑结构上的堆。那么堆到底有什么用呢&…...

0基础学会在亚马逊云科技AWS上利用SageMaker、PEFT和LoRA高效微调AI大语言模型(含具体教程和代码)

项目简介&#xff1a; 小李哥今天将继续介绍亚马逊云科技AWS云计算平台上的前沿前沿AI技术解决方案&#xff0c;帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS上的AI软甲开发最佳实践&#xff0c;并应用到自己的日常工作里。本次介绍的是如何在Amazon SageMaker上…...

护网HW面试——redis利用方式即复现

参考&#xff1a;https://xz.aliyun.com/t/13071 面试中经常会问到ssrf的打法&#xff0c;讲到ssrf那么就会讲到配合打内网的redis&#xff0c;本篇就介绍redis的打法。 未授权 原理&#xff1a; Redis默认情况下&#xff0c;会绑定在0.0.0.0:6379&#xff0c;如果没有采用相关…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)

引言 工欲善其事&#xff0c;必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后&#xff0c;我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集&#xff0c;就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...

Python实现简单音频数据压缩与解压算法

Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中&#xff0c;压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言&#xff0c;提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...