问题标签 [communication-protocol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
48 浏览

java - 修改路由器内部服务器,拥有自己的路由器管理页面

所以今天我来了这个奇怪的问题。最近我的无线连接遇到了很多问题,我想要一种快速启用/禁用无线的方法,还可以阻止我的 MAC 地址并查看有多少设备连接到我的网络等。

所以我认为我可以为我的路由器制作一种 API,然后构建我自己的应用程序来访问它(我已经模拟了客户端和路由器服务器之间的 HTTP 通信)。但是,我必须从服务器端读取来自路由器内部服务器的 HTML 响应,这似乎太不切实际了。

然后我只是想应该有一种方法可以直接访问路由器信息,就像内部服务器一样,甚至可以更改内部的网站。

我想这取决于路由器,但只是想就什么是最好的方法以及我可能会错过的任何协议或更好的方法征求意见/建议。

我知道这是一个棘手的问题,也许它不应该出现在 stackoverflow 中,但我认为你们中的任何人都会有知识。

正如你所看到的,现在我正在访问这个 CGI,直接向路由器询问它们,我很高兴看到里面有什么。

路由器:Mitrastar gpt-2541GNAC

非常感谢您的帮助!

0 投票
0 回答
86 浏览

browser - 如何在我已经打开的应用程序中打开在外部应用程序中单击的链接

因此,我们都知道我们的安卓和 iPhone 可以在浏览器和应用程序之间进行顺畅的切换。我的问题是:我们可以在 Windows 机器上归档任何类似的东西吗?

场景: 1. 我在 Skype 或 Outlook 等 Windows 应用程序中获得链接。2.我点击链接。3. 魔术:不知何故,有人检查我的 Web 应用程序是否已经在客户端浏览器中打开。4. 浏览器打开我的 Web 应用程序的现有实例,从链接中接收参数并开始工作。

我想到的可能的解决方案/黑客: 1. 当我的应用程序中的链接打开时,通知服务器并检查用户是否已经在不同的选项卡中处于活动状态。2. 如果是,我们在新打开的选项卡中显示一个信息页面,表明该链接已转发到服务器并将由现有的 Web 应用程序实例处理。

Windows中是否有内置方式?

我已经环顾了一段时间,但没有发现任何有用的东西适用于多个应用程序(通过插件/浏览器扩展)

谢谢!

0 投票
2 回答
1310 浏览

ios - 自定义 URL 方案错误:此应用不允许查询方案

我有 2 个应用程序,一个客户端和一个服务器。我正在尝试使用 URL 方案在 ios 应用程序之间进行应用程序间通信

(我已将此https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app 作为指导方针)

这是客户端的plist

iOS端代码

服务器端

列表

代码

我从他们那里得到的只是

-canOpenURL:URL 失败:“com.test.clientEndApp://provideInfo?username='Debanjan'” - 错误:“此应用不允许查询方案 com.test.clientendapp”

-canOpenURL:URL 失败:“com.test.serverEndApp://requestInfo?userID='22'” - 错误:“此应用不允许查询方案 com.test.serverendapp”

我已遵循所有步骤,但仍处于这种状态。帮助我意识到我做错了什么

我在 xcode 12.2 上的 iPhone 8 iOS 12.2 模拟器上运行它

0 投票
2 回答
2733 浏览

stm32 - 多从机到单主机 SPI 软件从机管理的工作原理

我正在使用 STM32H7 系列微控制器作为 SPI 主发送设备,它需要与 4 个 SPI 从设备通信,这些设备也都是 STM32H7 MCU。主机和从机都配置为软件从机管理。令人困惑的是,在不使用硬件 NSS 引脚的情况下,从机如何识别主机何时想要与其交谈或向其传输数据?从设备如何在这种情况下开始接收并在所有数据传输时停止接收?

0 投票
1 回答
976 浏览

driver - AUTOSAR CAN 堆栈实现提示

我的任务是使用最新版本的 AUTOSAR (R19-11) 为 CAN 模块创建软件堆栈。我不会使用任何配置工具。根据我在 AUTOSAR网站上阅读的内容,这些是我必须实现的模块:CAN 驱动程序、接口、状态管理器、PDU 路由器和 AUTOSAR COM。因为我不打算使用超过 8 字节数据的帧,所以我不需要 CAN 传输协议模块。

在将 PDU 向下发送到堆栈时,一些模块会将元数据添加到这些接收到的 PDU(在本地称为 SDU),然后将它们发送到下一层。我读过我们必须为这些 PDU 分配唯一的 ID。此外,我们必须有一个路由表(在 PDU 路由器内部),用于根据每个 PDU 的 ID 确定其目的地。

我的问题是:

  • ID是如何分配的?
  • 身份证会是什么样子?
  • 对于给定的 CAN 帧,我是否必须根据 PDU 在堆栈中的当前位置分配不同的 ID?(COM、状态管理器、接口或驱动程序)
  • 知道用户(应用层)可以定义任意数量的 CAN 帧,PDU 路由器如何事先知道某个 PDU 的 ID 以及它的目的地是什么?
  • 从应用层开始到 CAN 驱动模块结束的消息传输(或接收)是什么样的?
  • 接收 PDU 的模块将添加哪些元数据(或 PCI - 协议控制信息,在 AUTOSAR 中称为)?例如:应用程序发送数据 0xAA。COM 接收到这个 PDU 并添加一个特定的 PCI,然后将其发送到 PDU 路由器等等。SDU + PCI = PDU 在每个阶段会是什么样子?
0 投票
1 回答
192 浏览

c# - COBOL 和 C# 之间的数据通信

我想在COBOLC#应用程序之间建立一个通信协议。我没有找到连接这两个应用程序的正确方法。唯一可能的方法是通过 COBOL 将数据写入文件并通过 C# 应用程序读取,反之亦然。

我可以使用套接字技术来创建这样的通信,因为文件方法的性能很差吗?或者还有其他在这两种语言之间传递数据的方法吗?

0 投票
0 回答
104 浏览

java - 在两个严重依赖彼此的本地服务之间进行通信的好方法是什么?

场景:我有两个服务/应用程序。

应用程序A是一个游戏服务器,它接收来自游戏客户端的事件。该应用程序现在需要向应用程序B请求某些信息,例如注册用户等。它还需要向应用程序B发送事件。使用的语言是 Java,对此我无能为力。

应用程序B是一个处理用户存储的应用程序,其中包含授权逻辑。它还充当整个事物的 API,只有Application B可以与 Application A通信。此应用程序需要向应用程序A请求有关某些事情的信息,例如配置和连接的用户/游戏客户端。它还需要通过 API 交互触发的事件向 Application A发送事​​件。

我意识到这两个应用程序可以写成一个,但我宁愿在 NodeJS 中编写 API 和逻辑,因为我更愿意这样做并且宁愿不使用 Java。我已经简要地查看了 WebSockets、Sockets 和标准 HTTP 请求作为通信手段,但不知道哪种通信适合这种通信/耦合。

0 投票
0 回答
82 浏览

embedded - STM32 既做主又做从

我正在做一个具有以下组件的项目:

  1. STM32F303微控制器
  2. 射频收发模块
  3. SPI 线路驱动器(连接到另一个将向 STM32 发送/接收数据的主微控制器)

STM32F303 微控制器将向 RF 模块发送命令以发送和接收 RF 信号(在第一种情况下,STM32F303 将充当主机,RF 收发器充当从机)。同时,STM32F303 还将通过 SPI 线路驱动器接收来自主微控制器的命令(在第二种情况下,SPI 线路驱动器可能充当主机,而 STM32F303 将充当从机)。

从本质上讲,我计划将所有 MISO/MOSI/SCK 引脚连接在一起,并从 STM32F303 微控制器中获得两条独立的 CS 线:

  1. 用于将 STM32F303 连接到射频收发器模块的 CS 线
  2. 一条单独的 CS 线将 STM32F303 连接到 SPI 线驱动器

我附上了电路的框图:电路框图

如上图所示,STM32F303 微控制器是否可以同时充当从机和主机?

谢谢!

0 投票
0 回答
52 浏览

c - 两个 MSP430 之间的时序错误通信

对于一个项目,我将两个 MSP (MSP430FR6989) 相互连接,一个作为主机(其中的代码已经给出,我无法对其进行太多更改,所以我不能使用 SPI),一个作为从机。从机将仅充当主机的内存扩展(谁将向从机写入地址和数据)。有很多“解决”这个问题的方法,但是我的手被迫去做。

主机将向从机写入一个地址,他还将一个引脚拉高(对从机不做任何事情)和另一个低电平(将导致从机上的中断)。这些引脚分别是 3.0 和 3.1。根据拉低的引脚,从机要么从主机读取数据并将其存储在主机提供的地址中,要么查看地址并将存储在该地址的数据写入主机。

正如您可以想象的那样,当您这样做时会出现很多时序问题(数据不会在引脚上停留足够长的时间,等等)。我试图通过使用引脚 3.2 来解决这个问题。仅当该引脚被拉高时,主机才会读取(它基本上会轮询整个时间,因为此时主机不需要做任何其他事情)。写作时也会发生同样的事情(关于 ish)。主机将再次将此引脚推低

大师的代码片段是:

对于奴隶,我打断了:

调试时,一切正常(我使用 UART 连接进行测试),但正常运行时(在发布模式下),它不再正常(数据和地址都正确给出)。这让我认为它仍然是一个时间错误,但我不知道如何以及为什么。

我也在想我应该能够在不使用那个端口 3.2 的情况下做到这一点,但我还没有尝试过,因为我认为那里还会有一些我现在不知道如何解决的主要时间问题。

如果需要更多代码,请询问,但这些只是我认为唯一重要的代码。

亲切的问候。

0 投票
0 回答
544 浏览

java - 微服务如何相互通信?

我想将我目前的单体应用程序转换为微服务模型。我目前一直在寻找独立微服务相互通信的最佳方式。每个独立的微服务理论上可以用不同的语言编写,因此通信协议必须与语言无关。此外,文件不起作用,因为服务可能运行不同的机器,甚至在不同的大陆上。以下是我目前的想法和问题:

  1. 使用像 Redis 这样的数据库/消息代理:这依赖于一个中央数据库,所以如果它出现故障,整个应用程序都会出现故障。不理想。
  2. 使用 websockets:开销?如何处理身份验证?
  3. 公开 HTTP(S) API:与 websockets 相同的缺点
  4. 为 RSS 等最终用户设计的其他协议:这似乎是个坏主意。

关于我所说的 4 种方法还有什么其他想法吗?哪一个是最好的?如果可能的话,能否给我一些关于如何最好地实施它们的例子?Java 是编写第一个微服务的语言。但是,请记住,它必须适用于大多数其他语言,而不仅仅是 Java!如果有更好的方法来实现我的目标,请说明并详细说明它是如何工作的。