javascript - 未捕获(承诺中)错误:由于服务器上的错误而无法调用“XXXXX”
问题描述
我使用 SignalR 创建了一个 .net 核心聊天应用程序,并使用 WebRTC 进行视频通话。因为我需要使用服务器方法将 SDP 发送到接收器,所以我创建了一个名为“SendOffer”的集线器方法。当我单击视频通话按钮时,我调用了这个“SendOffer”方法。我已将客户端代码放在下面
var connection = new signalR.HubConnectionBuilder()
.withUrl('/chat')
.build();
const Peer = new RTCPeerConnection();
const video = document.querySelector('video');
const constraints = {
'video': true,
'audio': true
}
document.getElementById("sendVideo").addEventListener("click", function (event) {
navigator.mediaDevices.getUserMedia({
video: true,
audio: true,
}).then(function (stream) {
video.srcObject = stream
video.play();
//Peer.addStream(stream);
Peer.createOffer()
.then(sdp => Peer.setLocalDescription(sdp))
.then(function () {
console.log(Peer.localDescription);
//connection.invoke("SendOffer", Peer.localDescription).catch(function (err) {
// return console.error(err.toString());
connection.invoke("SendOffer", Peer.localDescription);
})
});
})
但这会在控制台日志中出现错误并且无法正常工作。打击是错误
signalr.js:2088 Uncaught (in promise) 错误:由于服务器上的错误,无法调用“SendOffer”。在 _this.callbacks。(signalr.js:2088) 在 HubConnection.processIncomingData (signalr.js:2182) 在 WebSocketTransport.HubConnection.connection.onreceive (signalr.js:1905) 在 WebSocket.webSocket.onmessage (signalr.js:3949)
谁能帮我解决这个错误。
解决方案
有同样的错误。在我的情况下,这是因为类型不匹配。服务器预期的字符串。客户端正在从值为“1234”的变量发送值,该变量作为 int 发送。
推荐阅读
- javascript - 是否可以从继承的工厂方法中通用地实例化 JS 类类型?
- python-3.x - 使用 Python3 的 Kraken API 'EAPI:Invalid key'
- python - 使用 re python 查找获取请求的路径
- java - 从另一个类调用方法时自动装配的组件空指针异常
- excel - 使用当前区域的偏移量获得重复
- vba - 将文件夹中的所有文件作为单独的附件发送
- mono - Mono 在两台不同的机器上的行为略有不同
- c# - 如何检查文件是否已完全写入磁盘?
- r - R获取基于其他几列的一列的值和一列的最大值?
- string - 如何用多个分隔符划分字符串,但分隔符保留包含在数组中?(VB.NET)