是否有一种使用对等网络将JSON对象从JavaScript发送到C#服务器的方法?或者,如果还有其他方法可以将数据实时发送到C#上。下面列出了我的JavaScript代码中的两个函数。

点对点代码

function newPeerServer(evt) {
    console.log('Creating new peer server');
    newPeerEntry = true;
    evt.preventDefault();
    myPeerId = document.getElementById('newpeerid').value;
    var peerNetTemp = document.getElementById('peernet').value;
    peerNet = JSON.parse(peerNetTemp);

    // Distroy default peer before creating new one
    peer.disconnect();
    peer.destroy();

    // Show new peer credentials. Hide default ip address
    document.getElementById("connectionopen").style.display = 'none';
    document.getElementById("newpeercreated").style.display = 'block';
}

function sendToPeer(evt, data) {
    var dataToSend = {"event": evt, "data": data};
    peer_connections.forEach(function(connection) {
        connection.send(dataToSend);
    });
}


斯凯尔顿跟踪代码

function startSkeletonTracking() {
    console.log('starting skeleton');

    var skeletonCanvas = document.getElementById('skeleton-canvas');
    var skeletonContext = skeletonCanvas.getContext('2d');

    resetCanvas('depth');
    canvasState = 'depth';

    if(kinect.open()) {
        kinect.on('bodyFrame', function(bodyFrame){
            if(sendAllBodies) {
                sendToPeer('bodyFrame', bodyFrame);
                if (doRecord) {
                    bodyFrame.record_startime = recordStartTime;
                    bodyFrame.record_timestamp = Date.now() - recordStartTime;
                    bodyChunks.push(bodyFrame);
                }
            }
        });
        kinect.openBodyReader();
    }
}

最佳答案

您可以使用ajax,使用jQuery可以进一步简化它:

$.ajax({
    type: 'POST',
    url: 'your-url-to-csharp-method-here',
    data: {
        id: 3,
        name: 'Jeff',
        age: 33
    },
    success: function(result) {
        console.log(result);
    }
});


还有其他传递数据的方式(例如websockets),但是我看不出使用AJAX以外的任何其他方式将JSON传递到服务器的理由。

10-08 04:05