所有问题
javascript - 为什么我的 collection.update() 不能在我的服务器端工作,而是通过控制台工作?
当我通过 Chromium 控制台运行以下collection.update代码时,它可以完美执行,但是当它在服务器端执行时,实际上会发生 nu 集合更新。
我将不胜感激任何帮助解释为什么这适用于客户端而不是服务器端。
../server/main.js
在终端中,我可以看到上述代码的打印结果:
Unique_ID:SX43WLwHbKptpbJyN ...并且状态为:成功
在此代码运行后(在服务器端),没有为具有 _id 的行设置“成功”:SX43WLwHbKptpbJyN。
有人可以解释为什么这在通过控制台运行而不是在服务器端运行时有效吗?
powershell - 在 TFS 的多个发布任务中设置和使用环境变量
我有一个使用 TFS 构建和发布的 Web 应用程序。发布定义包含一个任务组,其中包含部署 Web 应用程序所需的所有步骤。
我想要做的是确定某个值并将其存储在一个变量中,以便稍后在其他发布任务的发布过程中使用。
此时,任务组中的第一步是一个 Powershell 任务,该任务确定必要的值并将其存储在环境变量中,使用:
当我在下一个任务(同样,一个 PowerShell 任务)中使用此环境变量时,它使用以下命令完美运行:
当它变得奇怪时,我想将变量用作(多个)不同任务的参数。当环境变量没有默认值时,使用第一个 PowerShell 任务的计算值,一切正常。但是当环境变量没有默认值并在能够再次保存发布定义之前强制提供一个时,TFS 不喜欢它。当我提供默认值时,使用该变量作为任务参数的任务使用默认值,而不是计算值。我希望应该使用计算值,因为第二个 PowerShell 任务可确保正确存储计算值。
所以,我看到的症状:
- 当不提供默认值时,脚本中的代码以及任务参数使用计算值
- 提供默认值时,脚本中的代码使用计算值,任务参数使用默认值
是我做错了什么,还是我使用了错误的环境变量,我应该使用不同的方法吗?
android - Dagger 2 的双向依赖
我正在我的 Android 应用程序中试验 VIPER 架构。我将 Dagger 2.11 用于 DI。
我对每个 VIPER 模块的依赖项是:
Presenter并Fragment通过ViewInput和ViewOutput接口链接。Presenter并Interactor通过InteractorInput和InteractorOutput接口链接。- 其他一些依赖,我们不感兴趣。
这是我的匕首模块的样子:
现在,当我打电话给inject我时Fragment,会发生以下情况:
PresenterFragment通过ViewOutput接口注入InteractorPresenter通过InteractorInput接口注入Presenter没有注入,因为类型(以防止循环依赖)。InteractorLazy- 在第一次调用之后通过接口
Lazy.get()Presenter注入。InteractorInteractorOutput
问题是在第 1 步和第 4 步中注入了不同的实例。Presenter我怎样才能让匕首将同一个演示者注入到Fragment和中Interactor?
或者也许我需要以其他方式修复依赖循环?
azure-cosmosdb - 在 Cosmos DB 中创建数据库/集合是否需要花费一些东西?
- 每次在 Cosmos DB (SQL API) 中删除/重新创建数据库时是否会花费任何费用?
- 每次在 Cosmos DB (SQL API) 的数据库中删除/重新创建集合时,是否会花费任何费用?
django-views - openshift django 打开并写入文本文件
我用 django 创建了一份问卷,在我的 views.py 中有以下代码作为函数的一部分
这在本地运行良好。它在桌面上创建一个文本文件夹,并用完成它的每个人的数据填充它。当我使用 openshift 运行代码时,我得到:
“[Errno 2] 没有这样的文件或目录:'/Users/arsenios/Desktop/data.txt'”。
我看到有些人问并提到“OPENSHIFT_DATA_DIR”,但我觉得他们没有包括一些步骤。我不知道应该对settings.py 和views.py 做哪些更改。
任何帮助,将不胜感激。
c# - 单击 div 元素父级时如何将密钥发送到临时创建的输入元素?
我陷入了这个问题:我们的网页有一个动态表,它将在div元素上加载值(学生的分数)。如果我们点击 said div,一个新的子元素input将被附加到div并且我们应该能够使用SendKeys方法输入一个新的标记。但是,当我尝试发送密钥时,会StaleElementReferenceException出现一个。
这是input添加时的元素(必须使用断点,因为一旦div元素失去焦点,元素就会消失):
这是我用来单击div并尝试的代码SendKeys:
谢谢你的时间
asp.net-core - 如何覆盖 ASP.NET Core 配置数组设置以减少数组的长度
我有一个带有appsettings.json配置文件的 ASP.NET Core 应用程序。文件中的一项设置由对象数组表示,如下所示:
在我们的 CI 系统中,我们使用环境变量来覆盖文件中的配置设置。事实证明,我只能覆盖现有项目或向数组添加新项目,但我无法使用索引表示法("Globalization__Languages__0__DisplayName"等)减少项目数量。
和 一样appsettings.{Environment}.json,即使我只有一个项目,我仍然有两种语言选项。
当然,我可以使基本配置为空或发明一些其他解决方法,但我错过了什么吗?有没有办法巧妙地覆盖减少项目数量的设置(最好在环境变量的帮助下)?
discord - 如何回复发送给机器人的任何 DM?
我正在尝试让我的机器人回复发送给它的任何 DM。
所以我目前有这个:
但不幸的是,它没有回复任何 DM。
我试图替换msg.channel.DMChannel为,msg.channel.type == 'dm'但这没有用。
我也尝试替换msg.reply为msg.author.send,msg.channel.send但它们都不起作用。
任何帮助,将不胜感激。
谢谢!
javascript - VueJs:通过路由防止在 IOS10+ 上弹跳和缩放
目前我正在开发一个与 Threejs 相关的 Vuejs 应用程序。稍后将显示 3D 模型。作为一个框架,我使用 vuejs 和 vuetify。我使用来自 vuejs 的路由器。
由于我想显示 3D 模型,因此不希望在浏览器中进行缩放。此外,必须停用智能手机上当今现代浏览器可以做出的所有手势,以避免例如意外重新加载页面。我为此使用元标记:
不幸的是,它在 IOS10+ 下不起作用。所以我使用了 InoBounce.js。此脚本应修复此行为。
这在开始页面上效果很好,但在我通过按钮更改路线后的任何页面上都没有。因此,当我单击按钮返回开始页面时,脚本不再在那里工作。这可能是因为创建者没有将其调整为与 vuejs 一起使用。
在更改路线时,我已经尝试使用观察程序再次运行脚本。我已经稍微改写了脚本,这样它就不再想在全局范围内创建自己,而是包含一个导出的方法。然后我使用 Vuex 将其“全局”嵌入,然后在每次路由更改时运行它。它看起来像这样:
浏览器中的调试器还指示在每次路由更改时调用该方法。但它仍然只在第一次加载时的主页上有效(好吧,因为我也称它为“已安装”区域)。
所以....我真的是互联网上唯一一个想要防止缩放与像 vuejs 这样的框架相关的人吗?因为不幸的是,我在互联网上找不到太多与它有关的东西。
在与 vuejs 相关的 Safari 中阻止缩放和弹跳的最佳方法是什么?
更新:
我忘记了一件重要的事情:
我还必须在我的标签中添加以下几行作为样式:
这应该阻止诸如“滑动刷新”之类的手势。
python - 谷歌数据存储:ndb.put_multi 不返回
我目前正在使用 NDB 库将 XML 文件中的一些实体重新插入 Google Datastore。我观察到的问题是,有时ndb.put_multi()似乎没有返回,脚本挂起等待它。
代码基本上是在做以下事情:
我之前已经注意到这种行为,但它似乎是非常不确定的,我想知道是否有办法正确调试和/或设置超时ndb.put_multi所以如果它在给定之后没有返回,我至少可以重试它时间。
提前致谢,
java - 如何为单元测试覆盖 insertable=false
在我们的应用程序中,我是另一个系统的客人,我不想做出任何具有大规模后果的改变。
我正在从头开始编写单元测试,因为之前的作者没有打扰。(抱怨。)我正在尝试插入一行以使用 JPA/hibernate 测试我的查询,但很惊讶我收到以下错误:
尤其是当我知道我已经设置了值时,因为我必须为它编写一个 setter。然后,在其中一个对象上,我找到了以下定义(我必须查找):
这就解释了为什么我在该列上仍然为空。
我在删除 insertable 时没有什么大问题,因为它不是自动生成的,所以如果你要插入一条记录,为什么你不想包含它,这显然不会在系统内部发生。并且可更新将保护它。但如果我不需要,我真的不想。
所以,我的问题是,有没有办法只为单元测试覆盖它。我尝试在谷歌上搜索几件事,但为此措辞有点问题,我什么也没找到。
mongodb - 无法从我的手机连接到本地主机
我开发了一些简单的微服务,它们从 MongoDB 数据库中获取数据并以 JSON 格式返回它们。
数据库在我的机器上,微服务也是。当我启动一个微服务时,我可以访问我机器上的数据,例如连接到
在我的浏览器上。
我也想从我的手机获取数据。所以我把它连接到同一个网络,从我的电脑上,使用ipconfig命令我发现电脑的IP地址是192.168.1.63
但是,如果我尝试连接,http://192.168.1.63:7003/projects则无法获取数据。
我搜索了一些解决方案,但一无所获。我跳过了一些步骤吗?
iis - 处理 IIS 低级错误
我正在使用 IIS8 和基于 .net 框架 4.5 构建的 MVC.NET 网站,作为安全修复的一部分,我被告知拥有所有 403 状态代码的通用错误消息,我能够使用来自 web 的 httpErrors 标签来实现。配置文件使用“”条目。但是 http.sys 引发的一些错误仍然显示系统级错误而不是一般错误。例如,对 URL“ http://abc.xyz.com/login/../../../../../../../admin.txt ”执行 GET 请求将返回“HTTP错误 403。请求 URL 被禁止。” 错误,而它应该返回我的 httpErrors 标记中提到的通用错误消息。
令我惊讶的是,如果我停止网站(不是 IIS),我仍然收到相同的错误,它确实确认错误是在 IIS 的低级 API 上处理的,并且没有传递到应用程序层,因此 web.config 中的任何更改都是无助于解决此问题。
有人可以对如何解决这个问题有所了解吗?
谢谢阿杰·萨万特
android - 注册 2 个活动以接收图像,从 Google 相册应用共享时不起作用
假设在我的应用程序中,用户可以发布帖子并向其他用户发送消息,并且我想将我的应用程序注册为共享文本或图像时出现在共享通过选择器中的组件,我正在定义我的 2我的活动AndroidManifest.xml如下(比如这个官方例子):
共享文本时,这工作得很好,我在可用于共享文本的应用程序中看到我的应用程序的 2 个图标,命名为MyApp (Post)& MyApp (Message),
共享图像时会出现问题,因为清单中只有一个带有第二个定义标签的图标(即MyApp (Message)),实际上它打开了清单中第一个定义的活动(即SharePostActivity),
那么,如何在共享图像时显示 2 个选项(就像共享文本时发生的情况一样)?
(我尝试过运行 Nougat 的模拟器和运行 Oreo 的真实设备)
- - - 更新 - - -
我发现这种奇怪的行为只有在从Google 的照片应用程序共享图像时才会发生,但是从其他应用程序共享图像时一切正常!
c# - C# string.split 从 IBM Emulator 中提取时会逐字母拆分
我在 IBM 仿真器环境中工作。我正在尝试获取一行文本并按空格分隔以返回该行中的每个单词。但是,当打印到控制台时,它只显示第一个字母。此代码过去在用于原始文本或 api 结果时有效。但是,在 IBM Emulator 上实现相同的代码时不会。
例如,如果模拟器中的行是HEALTHSELECT OF TEXAS,下面的代码将正确打印第一个和第二个控制台。使用双 for 循环仅打印第一个字母。实际列出的控制台输出如下:
C#代码:
有没有人使用过这种模拟器并且在正确获取这些值时遇到任何问题?我使用 EXTRA 处理过旧的 attachmate 系统!基本并且没有问题,但这是我第一个使用 C#.net 的 IBM 系统客户,因此可能会有所不同。
sql - SQL 将 Pivot 结果转换为 H:mm:ss
这就是我的原始数据库的样子:
这是我用来实现当前结果的代码:
我目前的结果是:
+------------+----------+------+------+----+-----+------+------+------+------+------+------+
| DATE | State | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 |
+------------+----------+------+------+----+-----+------+------+------+------+------+------+
| 2018-02-14 | Downtime | NULL | NULL | 83 | 118 | NULL | NULL | NULL | NULL | NULL | NULL |
+------------+----------+------+------+----+-----+------+------+------+------+------+------+
| 2018-02-15 | Downtime | NULL | 60 | 6 | 11 | NULL | NULL | NULL | 7 | NULL | NULL |
+------------+----------+------+------+----+-----+------+------+------+------+------+------+
我尝试了许多不同的位置和方法将其转换为分秒。我最终遇到了一系列错误,我不确定我做错了什么。我用于将秒转换为小时分钟秒的方法如下。我不确定这是否与我正在使用的格式不兼容,或者我是否将其放在正确的位置或现在。下面这个 Convert 函数中的列引用也可能不准确。
有谁知道实现我的目标的好方法,即以小时分钟秒为单位显示每个进程每天的停机时间总和?我的“当前结果”粘贴文本表正是我需要的,只是总和不是秒格式。任何帮助我将不胜感激,谢谢。
编辑:这被标记为与旋转无关的帖子的副本。这篇文章是关于在使用枢轴时进行适当转换,而不仅仅是一般地转换时间。我的帖子也不包含与毫秒有关的任何内容。如果这被标记为不重复,我将不胜感激,因为这是一种不同的情况,我在已经理解这篇文章被标记为重复的概念的同时苦苦挣扎。
我的预期输出是我当前的结果,但在 H:mm:ss
为先生编辑。标签:使用他标记为我的副本的帖子中的方法重做尝试和错误
1
2
3
cuda - 使用没有 .cu 扩展名的 Clang 编译 Cuda
第一个命令,直接来自手册,但第二个命令似乎没有将 .cc 文件识别为 cuda,即使我有 -xcuda 标志。
clang++ apxy.cu --cuda-gpu-arch=sm_61 -L/usr/local/cuda/lib64 -lcudart_static -ldl -lrt -pthread
clang++ apxy.cc -xcuda --cuda-gpu-arch=sm_61 -L/usr/local/cuda/lib64 -lcudart_static -ldl -lrt -pthread
c# - 使用 linq c# 透视表结果
想要使用 linq c# 透视此表
selenium - 使用 Singleton 与多个浏览器并行执行的问题?
我可以使用 Singleton 与多个浏览器并行执行吗?如果是,如何。
我在本地机器上遇到问题。
java - 什么可能导致软件在更好的硬件上运行更慢?
我有一个在 RHEL 7.4 上运行的 Java OSGi (Apache Felix) 应用程序,它以大约 975 个数据包/秒(长度为 1038 个八位字节)的速度读取多播 UDP。然后,它将数据转换为 XML,模拟通过边界设备,并将其转换回 UDP 多播数据包。涉及多个线程,并且它的编写方式是,如果模拟边界设备需要一段时间来处理一个有效负载,它会缓冲它并在下次发送更大的有效负载。
通过此集成测试场景查看数据包延迟时,两台不同的桌面级机器比我们预期部署的相当高端的服务器要快得多。
- 服务器延迟 5 秒。硬件:双 Xeon E5-2667v4@3.2GHz,128G RAM,16 个物理内核,32 个逻辑内核,RAID 1 SAS SSD。
- 桌面 A < 1 秒。HW Xeon E5-1620v4@3.5Ghz,64G RAM,4个物理,8个逻辑核心,500G SSD
- 桌面 B < 1 秒。硬件 i7-3770@3.4Ghz,16G RAM,4 个物理内核,8 个逻辑内核,1TB 7200RPM 驱动器。
我只提到完整的硬盘驱动器,因为这个应用程序不写入磁盘。在纸面上,服务器的运行速度至少应该与两个桌面一样快。
我已经消除的东西:
- 网卡。我已经对物理网卡和虚拟设备进行了测试,以防万一网卡之间存在显着差异。
- 逻辑核心数。我尝试禁用 16 个和 24 个服务器逻辑核心以排除变量。
- 爪哇版。所有这三个都已在 OpenJDK 和 Oracle 的 Java 中使用相同的版本 (Java
1.8.0) 进行了尝试,产生了相同的结果。 - Java 标志是相同的,并且都与 felix 相关(安装目录、配置属性和要执行的 jar)。
- SELinux。我已经在所有三种模式下都试过了(禁用、强制、许可)。我没想到这里会有所不同,但此时我正在抓住任何东西。
- 内核版本。我已经尝试过针对
3.10.0,4.13.0和的测试,4.15.0结果相似。
这里有两个示例图来说明这个问题。该测试在 4 分 10 秒内将 260,960 个 UDP 数据包发送到多播地址 A,并在通过应用程序处理后,将数据包发送到多播地址 B。tcpdump记录两者的时间戳并减去产生延迟。所有三个应用程序(Sender、Application,tcpdump都在同一台机器上)。
首先是针对虚拟接口的服务器硬件

i7 桌面硬件对抗虚拟接口

注意 Y 轴比例差异。服务器是 0-4 秒,i7 桌面是 0-1 秒。看起来难以阅读的 X 轴是 Packet Number。
下一次尝试
我正在运行应用程序的本地集成版本。然后,我消除了应用程序开始完成的几乎 100% 的工作,并看到服务器硬件上的延迟越来越长。然后我-Xmx100G -Xms100G基本上试图阻止垃圾收集器运行 EVER 并看到以下结果(< 1 秒的一致延迟)。

这让我想到了Java 8 的可用垃圾收集器。
服务器硬件上的默认垃圾收集器选择是新的:ParallelScavenge,旧的:ParallelOld。这是没有 XML 转换的结果延迟图,我可以通过简单的测试来复制问题。

显式选择 Garbage First Garbage Collector-XX:+UseG1GC选择 New: G1New, Old: G1Old,它的延迟图不是很好:

显式选择 Concurrent Mark Sweep Garbage Collector-XX:+UseConcMarkSweepGC选择 New: ParNew, Old: ConcurrentMarkSweep,它的延迟图看起来很棒:

看起来问题已经解决了。一旦我将所有组件添加回原位,我仍然会遇到不可接受的延迟。我仍在运行测试以查看是否可以隔离问题。
追踪结果
尝试strace -c -o /path/to/file -f产生以下顶级系统调用
首先是 i7 的桌面strace报告(截断前 10 项)
现在查看服务器的strace报告:
我不清楚我应该从中得出什么结论。futex桌面在系统调用和系统调用中都快很多倍poll。我仍然不明白为什么该应用程序在更快的硬件上更具有潜在性。
剖析
我已经在两个硬件上分析了软件,显示了热点的相似位置,这似乎排除了这一点。
html - 将 CSS 应用于具有多个类的 div
我想应用这些 CSS 设置:
到这个 html 代码:
如您所见,我有两个具有相同类“字段”的 div。但我想将 css 仅应用于“字段字段名称前缀”。我怎样才能做到这一点?
android - 强制 OkHttp3 客户端保持 TLS 连接打开
我正在开发一个应用程序,我必须通过 HTTPS 与具有自签名证书的嵌入式 IoT 产品进行通信。我成功设置 OkHttp 以使用自签名证书,并通过 Retrofit2 使用 RxCallAdapters 进行网络调用。
嵌入式产品一次只能处理一个连接,所以我将底层 OkHttp 实例配置为只允许一个连接(据我所知,也许有更好的方法)。
如果我只发出 GET 请求,则握手成功完成,并且连接对于整个请求序列保持打开状态。嵌入式产品在 5 秒不活动后关闭连接,因此预计我必须每隔一段时间重做一次握手。
在执行 PUT 和 POST 请求时问题开始出现。当请求流从一种请求类型更改为另一种请求类型时,或者实际上任何时候请求是 PUT 或 POST 时,OkHttp 似乎都不会保持现有连接打开。例如:
握手- 得到 - 得到 - 得到 -握手- 放 -握手- 得到......等等。
如何强制 OkHttp 在不同类型的请求之间保持连接打开?我知道这无关紧要,但似乎与响应代码有关。嵌入式设备上的 REST API 为 GET 提供 200,为 POST 提供 201,为 PUT 提供 204。
这是我用来配置 OkHttp 和我的改造实例的相关代码:
java - Spring-Security 5 总是 302
我正在尝试使用标准 Spring Security API 测试我的 web api,但是每当我登录到我的应用程序时,/test.html api 都会不断返回 302 重定向。 用户名:admin / 密码:admin
laravel - 用户登录 LocalHost 时出现意外的 HTTP 500 错误,但在实时站点上登录成功
我从生产服务器拉到我的本地主机服务器的代码是相同的。在实时站点上,用户可以正常登录,但在 Localhost 上我不能。我在这个项目中使用 Laravel 5.1 以及 XAMMP 服务器。
问题不可能出在源代码上——因为它在实时站点上和在我的机器上是一样的。它可以在实时站点上正常工作。因此,我猜测问题在于我的 XAMMP 配置设置,但我不确定从哪里开始。


