所有问题
javascript - 如何在 Cloud Firestore 触发器中运行异步代码
我正在使用此处记录的 Cloud Firestore 触发器。 https://firebase.google.com/docs/functions/firestore-events
如何从这些函数之一运行异步代码?这是我想做的一个例子。
当我尝试部署此功能时,我收到此错误消息。
javascript - 即使抛出错误,猫鼬也会返回文档
我有一个 Express.js 路由,可以通过用户名和密码从我的 MongoDB 数据库中检索用户。我的目标是从请求正文中获取用户名和密码,通过用户名找到用户,然后验证密码是否匹配。如果密码匹配,我想返回用户对象和 200 状态码,如果密码不匹配,我想返回 404 和错误消息。
目前我的路线正在运行,但即使密码不匹配,用户也会始终返回。我正在检查它们是否匹配并抛出错误,但它似乎没有像我预期的那样抛出。理想情况下,如果密码在我的服务调用中不匹配,我想抛出一个错误,并在我的路由中捕获它以返回正确的状态代码。
我试图在我的路线中捕获错误并从服务返回被拒绝的承诺,但仍然返回用户。我的预感是在findOne返回记录后运行接受的回调?
我在控制台中收到 UnhandledPromiseRejectionWarning 对应的行,如果密码不匹配,我将抛出错误:
服务器.ts
注意
我find在导入时重命名为findUservia
find as findUser
用户服务.ts
user.ts(用户猫鼬模型)
java - 在 Java 中,如果舍入不一致,我如何预见舍入错误?例如 0.03 * 100 = 10.029999 但 10.05 * 100 = 10.0500001?
所以,我刚刚开始学习,我知道舍入错误问题在这里最常见。但是我找不到一个可以明确回答为什么会发生这种特殊事情的答案,或者更确切地说,我怎么知道要寻找什么?我知道这是因为变量的存储方式而发生的,并且它们可以保留多少小数位是有限制的,但我不确定为什么每个数字都不同。除了那个解释,我找不到更多的东西了。
我的教科书警告我要小心舍入错误,我确实知道如何将它们更正到我想要的小数位。但是,我仍然想知道我们如何为可能发生的数字做好准备。在编程过程中,我们可以要求控制台打印以检查并确保我们的数字是正确的,但是有没有办法在它发生之前“检测”它或者厌倦了哪些数字做什么?
有些数字没有舍入误差。示例:10.02 * 100 = 1002。
但是 10.03 * 100 = 1002.9999999999999
10.04 * 100 = 1003.9999999999999
10.05 * 100 = 1005.0000000000001
如果它与二进制有关,为什么 4 不安全?
php - 在 php 的函数 fwrite() 中我想写“$”字符?
在上面的代码中,当文件被导入时,变量 $d & $u 在 index.php 中没有出现(什么都没有出现)我希望 $u 和 $d 按原样出现,但 php 将其视为变量并且没有为任何变量分配任何值,但我想将 $d 和 $u 显示为简单文本,并且从数据库中获取 $domain 和 $user 的值。
如果我想再次在 php 中编写一个 sql 查询,错误开始于行 $id=$row['user_id']; 因为这个单引号'。
php中有什么方法可以让php理解我需要$u和$d作为简单文本,而不是fwrite函数中php文件中的php值,以及在php文件中导入sql查询而没有任何错误的任何方法?
提前致谢。
python - 运行scrapy CrawlerRunner时PyQt5可执行GUI冻结
当我使用 Pyinstaller 将我的脚本转换为独立的可执行文件并尝试运行我从这个答案(连接到更新数据库按钮)获得的 CrawlerRunner 进程时,我的 GUI 会打开一个新窗口并完全冻结。当以脚本形式运行时,它工作得很好。像这样:
在 main.py 中:
在scrapy_run.py
控制台日志
hugo - 在 blogdown 中使用 hugo-xmin 主题渲染站点时出现问题
我正在尝试将我的网站主题更改为hugo-xmin,但我无法让网站正确呈现。我得到了我想要的主页(如下),但是我没有得到这个Contact页面(我也没有在public目录中看到它)。
另外,我看不到格式正确的帖子,我看到目录类型的列表,并且在categoriesor中tags也看不到任何内容。
帖子页面粘贴在下面
我收到 的404消息Contact,如下所示(可能是因为文件夹中没有contact.html)public。
我试图理解blogdown书中主题的文档,但我无法取得太大进展。这里的任何帮助将不胜感激!
该站点的源代码可以在 - https://github.com/sn248/sn248.github.io找到
我正在使用blogdownversion0.20和hugoversion - 0.75.1,Rversion -4.0.2和rmarkdownversion - 2.3。
谢谢!
萨提亚
python - 在 Python 中使用协程正确捕获语法错误
我正在尝试编写一个基本上并行运行两件事的小 Python 脚本。我来自 JavaScript 并尝试使用 Python 的 async/await 协程功能,但我在让它按预期工作时遇到了一些麻烦。
让前两个函数并行运行很容易。我遇到的问题与捕获语法错误有关。
具体来说,我试图在我的一个函数中添加一些数学,但 Python 似乎只是停留在这一步(在工作之前打印,在他们没有工作之后)。我将我的问题追溯到没有像我预期的那样冒泡的语法异常,特别是如果它们发生在“期货”中,asyncio 似乎隐藏了错误。我认为这就是我的问题所在,但我已经花了很长时间试图按照我的预期来捕捉错误。
我尝试将整个有问题的协程包装在try/except中,但这似乎破坏了我的其他协程(似乎打破了我对协程如何工作的假设)。
运行一个有问题的协程按预期工作。
将它与另一个不会出错的协程结合起来会使另一个协程停止尊重asyncio.sleep.
我曾经到一个点,如果我按 Ctrl+C,它将停止打印“foobar”,打印语法错误,然后退出,但我未能捕获该代码并且它丢失了撤消。
我觉得我错过了一些简单的东西。任何指针将不胜感激。
python - 有人可以给我一些关于使用列表同时使用线程的见解吗?
我目前正在使用一个简单的程序来测试列表的功能,当涉及到我正在处理的单独网络分配的线程时。我的主要目标是查看列表是否可以是全局的,如果在开始时创建,在所有函数之外,并确保锁按我预期的方式工作。
我目前只有一个项目,旨在允许我将项目附加到列表中,然后让另一个线程每隔几秒钟将列表读回给我,以查看这些更改是否通过。我最近的问题是我不完全理解为什么传递给目标函数的参数必须是可迭代的,而不仅仅是一个对象。
我还发现你必须明确地将锁传递给每个函数,这有点奇怪。目前它没有给我任何错误,但有某种逻辑错误使程序只是坐着什么也不做。
这是我迄今为止所尝试的,起初这似乎是一个简单的想法,但我遇到了很多陷阱。我的网络项目的很多设计都依赖于使用一些平行列表来保留大量用户数据,但如果另一种数据结构可能更好,我愿意相信。
python - 权重和偏差:登录和网络错误
我最近安装了权重和偏差 (wandb) 来记录我的机器学习项目的指标。连接到 wandb 云实例或使用本地 docker 映像时,一切正常。现在,当我尝试通过网络访问本地 wandb 实例时,我开始收到 API 错误消息。但是,我也注意到 wandb 试图使用端口 80 而不是 8080 访问我的服务器。我在新的云服务器上安装了 wandb 客户端并尝试从那里访问我的服务器。仍然,下面显示相同的错误消息。
使用命令时会出现此错误:wandb login host=https://api.wandb.ai
我已尝试删除存储 api 设置并重新安装 wandb 的 .netrc 文件。还是一样的错误。在 Ubuntu 18.04 上使用 wandb 版本 0.10.2;此外,尝试降级到版本 0.8.36,没有变化。如果我尝试命令:wandb login --relogin,我会得到同样的错误。
有没有办法重置 wandb 让它忘记所有这些设置,或者直接解决这个问题?
非常感谢
此致,
阿德尔
machine-learning - 生成器对象列表的计算平均值
我想基本上计算phi[k][i-1]整个列的参数和平均值之间的均方误差,phi[:][i-1]即((p1 - p2)**2).sum()我尝试了以下方式:
但这行不通,因为 tmp 是生成器对象的列表。更具体地说,我想我的问题是计算该生成器对象的平均值。
firebase - Bigquery:如何从 Firebase Analytics 重新导入过期的数据集?
我最近从沙盒模式升级到计费帐户,以保持数据集不会过期。由于一些与 Firebase 关联的数据已经过期,我想重新导入 Firebase Analytics 中的所有数据。有人可以提供指导以获取与 Firebase 链接的所有数据吗?
我已经取消了 Firebase 和 Bigquery 之间的连接并再次重新链接。但是,它似乎不起作用。
c - 我必须使用 2 种方法将这个数组中的元素从大到小排列,但输出完全不同
这是代码
我应该从大到小排列元素,但我的输出是:“2 5 5 2 4” .
python-3.x - 使用列表而不是字典来组织结果
我试图让我的代码在下面工作,以使结果有条理而不是随机的。
这就是现在正在发生的事情。
而我想要实现的是
等。同时省略任何尚未滚动的数字。理想情况下,我希望使用列表而不是字典,但每次尝试时都会遇到不同的错误。目前这会输出金额,但不是按顺序输出。
flutter - Flutter:如何向图像添加缩放功能
在我的颤振应用程序中,使用以下代码构建了一个自定义图像
customImage.dart
我想添加一个功能来缩放此图像,我该如何实现?
java - Fabric - 加载游戏时 EntrypointException 崩溃
我目前正在探索使用 Fabric 进行改装。大约一个月前,我制作了一个运行良好的 mod,无论是从 VSCode 中的调试器运行时,还是在真正的 Minecraft 安装上编译和运行时。我在编译后添加了一些东西,但现在新编译的版本在加载时会导致游戏崩溃。然而,奇怪的是,在 VSCode 中从调试器运行时没有崩溃。
这是 ExampleMod.Java:
这里是 FatEmeraldItem.Java(不要问):
这是崩溃报告:
我曾尝试删除其他模组,但发生了同样的崩溃。我尝试完全重置项目(除了我的代码之外的所有内容)并重新运行相关的 gradle 任务(这样做,设法破坏了我的 gradle 安装,但我修复了这个问题)。我查看了这个 StackOverflow 问题,它具有相同的主要错误,但根本问题不同(他们的问题是 NullPointerException,而我的问题是 ClassNotFoundException)。我不确定我做错了什么。
java - 在 Swing 中自动组装拼图游戏(带有矩形瓷砖)的简单算法的问题
我需要为拼图设计求解器,它被分成矩形瓷砖(几行和几列):
然后以小于 1.0 的比例调整大小:
我的算法背后的想法是总结当前瓦片边的每个适当像素与所有其他相对瓦片边之间的差异 - 例如对于右边缘 - 我定义了这样的代码:
根据某种算法,我从某个边开始,其 rgbvalues 的总和在所有边的总和的整个范围的中间(sortinglistBySum/2)。然后我找到所有对立面的最小总和,并遍历该 Tile 的所有其他 3 个面,然后选择 Tiles,它至少有一个已处理的面,存储在队列中,直到所有面都以连续的方式处理。
但是第一个出乎意料的大问题是,大约 80 个像素(宽度或高度)的最小总和约为 50-70 000 000 个单位(RGB),而最大值可能超过 1000 000 000。所以这个最小和,甚至一个差异,例如 first/second/Npixel getRGB(width-1,1) - getRGB(0,1) - 就足够大了。确实在分割之前 - 相邻边缘的像素位置之间的差异应该只有 1 个像素?
因此,在这种情况下,如果左图块“右边缘索引”宽度-1 = 80,则匹配右图块左侧的 0 索引应为 81。或者至少差异可能为 2-如果图像丢失一条垂直像素线被分割,并且图像宽度除以列数不会产生整数值(我认为它不是真实图像,因此在技术上不应该丢失像素,只是在数学上)。
但是当我计算差异之和时。一个图块中两条相邻的垂直(或水平)像素线 - getRGB(width-2,i) - getRGB(width-1,i) - 它产生的值要低得多 - 大约 5-7 000 000. getRGB(width -3,i) - getRGB(width-1,i) - 30-40 000 000。所以我不明白为什么原始图像的相邻像素集之间存在如此大的差异?
另一个问题是,当我发现差异最小的反面时,我会检查这个反面的最小差异总和,并且只有当差异总和相互匹配时。我将这些边定义为相邻的,如果这个共同的最小总和小于我自己根据经验定义的某个阈值,也受到限制 - 在我的情况下,我认为它大约为 150 000 000(RGB 差异。),但这只是近似值。
但是还有第三个,可能是最困难的问题 - 如何检查这个匹配的边是否不是整个图像的边缘边,即使存在和的相互匹配,并且小于阈值,但实际上这些边不应该匹配为它们在原始图片中不相邻?!
这种方法工作得比较好,除了要考虑很多方面,以及在 Java Swing 布局中移动和更改网格单元的困难。例如,在我的第三个测试图像中匹配“单边”问题,在一个在最后一次迭代中,但它也可能在开始时发生。阈值在上面的一些不常见的情况下,用于无数学运算的边(确实与最小和相互匹配),或者在真正匹配的边下。
那么对于简单有保证的算法有哪些建议和参考,还有哪些更可靠的边缘检查和模式可以使用?为什么相邻边的rgb值差异之和如此之大?我什至以前读过,它应该对平方 rgb 值的差求和,但它会改变什么?另请阅读有关使用一些基于统计的算法的建议,因此可能会检查所有组合 - 检查从每个当前边缘(不仅仅是一个)遍历的边缘组合,然后选择最佳组合。
pyspark - 设置 PYSPARK_SUBMIT_ARGS="--name" "PySparkShell" "pyspark-shell" && jupyter notebook
我希望在我的 Windows 10 机器上安装 PySpark,但无法正确指定 PYSPARK_SUBMIT_ARGS 参数。
这是我从 gitbash 运行“pyspark”命令时看到的错误:
我已经卸载了除版本 8 之外的所有 Java 版本。在我的 .bashrc 文件中,我的路径当前指定为:
并且 JAVA_HOME 在我的环境变量中指定并在 Path 中设置。
我真的很感激任何其他故障排除技术!
非常感谢!!!
python - 将表情符号对象转换为 unicode
现在我正在制作 Discordbot,我正在处理反应角色!我想我已经完成了大部分设置,但我似乎找不到从表情符号对象到表情符号 unicode 的方法,所以我可以比较它们并添加反应。这是我到目前为止所拥有的:
因此该命令reactionrole创建嵌入,并将一些占位符数据写入 json 文件。之后,该reactionadd命令将表情符号 unicode 添加到 json 数组中,并将角色添加到不同的 json 数组中。在反应添加时on_raw_reaction_add(payload),有效载荷只有表情符号的名称,而不是 unicode。正因为如此,我无法将两者进行比较,看看哪个角色适合哪个表情符号。我无法保存原始文件,reactionadd因为我会在on_reaction_add. 我在从有效载荷中获取 unicode 时迷失了方向,这是我最后的接触。以下是有效载荷内部的内容:
google-cloud-functions - Cloud Schedule + Cloud Functions -> Gmail API watch() - WORKING NOW
这是我在此的头一篇博文。如果是转发,我很抱歉,但我已经在所有网站和论坛中寻找解决我问题的答案一个多月了,直到现在......没有答案!
我的目标是让 Gmail 发布/订阅 watch() 在我收到新电子邮件时执行操作。
为此,根据开发者的网站,我需要每天使用以下代码订阅 Gmail watch():
到目前为止,我有一个使用服务帐户的工作计划任务,具有 INVOKER 权限。这部分工作正常。
在我的“初始自动化功能”中,我有:
我现在的问题是访问令牌是第一次通过(提示)生成的,并且永远不会更新为新的(令牌在 1 小时后过期......)这意味着该代码在该时间段后停止工作并且“手动”干预是必需的。根据文档,我需要使用“离线”方法,并且在“提示”上我可以省略(仅在第一次请求权限)或无(从不询问),就像这里所说的那样。
我设法使它工作!明天我将继续这个过程。我应该在这里发布我的工作代码以供参考吗?
谢谢!
javascript - 输入数据不变。阿贾克斯
我正在使用 laravel 和 ajax 请求。回电后,我将更新的信息提取到我的输入表单中
但是当我在浏览器的控制台中编写时:
我在更新页面之前得到了我以前的数据
我不知道为什么 jQuery 不想获取正确的信息:
这是ajax请求的结束
docker - 创建一个允许容器之间通信但不能访问互联网的网络
如何使用以下方法创建 docker 网络testcontainers:
- 允许网络中的所有容器与每个容器进行通信
- 允许容器将端口映射到主机
- 但不允许容器访问互联网
我曾尝试使用internal网络来做到这一点:
但是,当我运行它时,我无法映射我的端口。抛出异常:
Caused by: java.lang.IllegalArgumentException: Requested port (8024) is not mapped
如果我在没有它的情况下运行它withInternal(true)可以正常工作,但容器当然可以访问互联网。
django - textarea 的 Django 表单、属性列和行不起作用,为什么?
我正在使用 Django 和 textarea 进行项目。默认情况下,textarea 呈现 cols="40" 和 rows="10",这对我的页面来说不是很好。我正在尝试使用 Django 的小部件将这些属性分别更改为 20 和 5。这是我的代码:
不幸的是,当页面被渲染时,代码根本不会改变表单的外观。意思是,它显示第 40 列和第 10 行。但是等等,事情变得非常奇怪......当检查开发人员工具时,在谷歌上,我可以看到 HTML 代码已更改为我想要的!疯狂的!!
我还尝试了在另一个聊天中找到的以下代码:
这会“改变”盒子的大小,但是……由于不同的原因,我不喜欢这个解决方案。
有人知道这里发生了什么吗?
我有一个 Windows 10 并使用 VEC。干杯!






