gpt4 book ai didi

javascript - 使用 ajax 在本地主机内将数据从客户端发送到客户端

转载 作者:行者123 更新时间:2023-11-29 10:02:20 27 4
gpt4 key购买 nike

我想制作一个连线四人游戏,可以选择在线与通过本地主机(在同一 WiFi 内)连接到我的游戏的另一个人对战。可以在两台计算机上玩游戏,但不能互相对抗。

首先,我想通过 ajax 调用从一个客户端向另一个客户端发送一个简单的字符串。我的尝试:

$(".column").click(function () {
$.ajax({
url: "GetBoard",
method: "GET",
data: { "currentplayer" : currentPlayer },
success: function (data) {
alert("success");
}
});
)};

我使用的 Controller 方法:

[HttpPost]
public ActionResult GetBoard(string currentPlayer)
{
return View(currentPlayer);
}

我真的不明白如何使用 ajax 发送数据或如何在 Controller 中接收和使用它。

最佳答案

为了使应用程序可以通过 wifi 网络使用,您可以执行以下步骤。

步骤#1

Publish您在本地主机上应用程序,以便如果其他用户在同一网络上,则他们可以使用监听端口浏览本地主机。示例:localhost:8733

步骤 #2

您可以使用 SignalR实时广播游戏中的更改,以便同一本地主机上的其他用户能够看到更改。

示例

如果你想广播特定 Id 的移动,那么你可以像这样创建你的 hub 类

 public class GameHub : Hub
{
public void Send(string move, int Id)
{
// Call the addNewMessageToPage method to update clients.
Clients.All.addNewMessageToPage(move,Id);
}
}

HTML

 <script>
$(function () {
// Reference the auto-generated proxy for the hub.
var chat = $.connection.chatHub;

//this will write to page
chat.client.addNewMessageToPage = function (move, Id) {

console.log("New move "+move);
console.log("New Id "+Id);

};


// Start the connection.
$.connection.hub.start().done(function () {
//this will broadcast move to all pages
$('#broadcast').click(function () {
chat.server.send($('#currentmove').val(), $('#currentId').val());

});
});
});

</script>

关于javascript - 使用 ajax 在本地主机内将数据从客户端发送到客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53298054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com