我有一个带有javascript(jquery)客户端的SignalR自托管应用程序。它在本地运行良好,但我还没有找到从远程计算机连接的方法。 我总是得到一个错误的请求 - 无效的主机名/ HTTP错误400
我以管理员身份运行Visual,我已禁用防火墙,如下面的代码所示,我已将服务器端URL设置为with env.begin() as txn:
length = txn.stat()['entries']
,并且我已在jquery连接中设置了我的IP地址,并且引用自动生成的signalR hub脚本。
url = "http://+:8081/";
$(function () {
// Declare a proxy to reference the hub.
$.connection.hub.url = "http://192.168.2.101:8081/signalr";
var con = $.connection.myHub;
// Create a function that the hub can call to broadcast messages.
var Nrobot = 1;
con.client.broadcastMessage = function (Nrobot, message) {
};
$.connection.hub.start({ jsonp: true }).done(function () {
$('#btn_P06P07').mouseover(function () {con.server.send(Nrobot, "LT");});
$('#btn_P01P02').mouseover(function () {con.server.send(Nrobot, "LTI");});
$('#btn_P03P04').mouseover(function () {con.server.send(Nrobot, "T") ;});
$('#btn_P05P06').mouseover(function () {con.server.send(Nrobot, "TI") ;});
$('#btn_P00P03').mouseover(function () {con.server.send(Nrobot, "RT") ;});
$('#btn_P02P05').mouseover(function () {con.server.send(Nrobot, "RTI");});
//MiddleRow
$('#btn_P04P07').mouseover(function () {con.server.send(Nrobot, "L");});
$('#btn_P12P15').mouseover(function () {con.server.send(Nrobot, "LI");});
$('#btn_P10P13').mouseover(function () {con.server.send(Nrobot, "C");});
$('#btn_P06P11').mouseover(function () {con.server.send(Nrobot, "R");});
$('#btn_P13P14').mouseover(function () {con.server.send(Nrobot, "RI");});
//BottomRow
$('#btn_P11P12').mouseover(function () {con.server.send(Nrobot, "LB");});
$('#btn_P07P10').mouseover(function () {con.server.send(Nrobot, "LBI");});
$('#btn_P00P01').mouseover(function () {con.server.send(Nrobot, "B");});
$('#btn_P02P03').mouseover(function () {con.server.send(Nrobot, "BI");});
$('#btn_P04P05').mouseover(function () {con.server.send(Nrobot, "RB");});
$('#btn_P14P15').mouseover(function () {con.server.send(Nrobot, "RBI");});
$('#btn_oClaw').mousedown(function () { con.server.send(Nrobot, "OClaw"); });
$('#btn_cClaw').mousedown(function () { con.server.send(Nrobot, "CClaw"); });
$('#btn_rBoom').mousedown(function () { con.server.send(Nrobot, "RBoom"); });
$('#btn_lBoom').mousedown(function () { con.server.send(Nrobot, "LBoom"); });
$('#btn_lPancam').mousedown(function () { con.server.send(Nrobot, "LPancam"); });
$('#btn_rPancam').mousedown(function () { con.server.send(Nrobot, "RPancam"); });
$('#btn_rElbow').mousedown(function () { con.server.send(Nrobot, "RElbow"); });
$('#btn_lElbow').mousedown(function () { con.server.send(Nrobot, "LElbow"); });
$('#btn_lFuture').mousedown(function () { con.server.send(Nrobot, "LFuture"); });
$('#btn_rFuture').mousedown(function () { con.server.send(Nrobot, "RFuture"); });
$('#btn_oClaw').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_cClaw').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_rBoom').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_lBoom').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_lPancam').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_rPancam').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_rElbow').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_lElbow').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_lFuture').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#btn_rFuture').mouseup(function () { con.server.send(Nrobot, "C"); });
$('#Joystick').mouseleave(function () { con.server.send(Nrobot, "C"); });
$(window).mouseleave(function () { con.server.send(Nrobot, "C"); });
});
});
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" href="robotCSS.css" />
</head>
<body>
<table id=Joystick>
<tr>
<td>
<input type="button" class="LTledClass" name="P06P07" id="btn_P06P07" style="height:50px;width:50px" />
<input type="button" class="LTledClass" name="P01P02" id="btn_P01P02" style="height:25px;width:25px" />
</td>
<td>
<input type="button" class="TledClass" name="P03P04" id="btn_P03P04" style="height:50px;width:50px" />
<input type="button" class="TledClass" name="P05P06" id="btn_P05P06" style="height:25px;width:50px" />
</td>
<td>
<input type="button" class="RTledClass" name="P00P03" id="btn_P00P03" style="height:50px;width:50px" />
<input type="button" class="RTledClass" name="P02P05" id="btn_P02P05" style="height:25px;width:25px" />
</td>
</tr>
<tr>
<td>
<input type="button" class="LledClass" name="P04P07" id="btn_P04P07" style="height:50px;width:50px" />
<input type="button" class="LledClass" name="P12P15" id="btn_P12P15" style="height:50px;width:25px" />
</td>
<td>
<input type="button" class="ledClass" name="P10P13" id="btn_P10P13" style="height:50px;width:50px" />
</td>
<td>
<input type="button" class="RledClass" name="P06P11" id="btn_P06P11" style="height:50px;width:50px" />
<input type="button" class="RledClass" name="P13P14" id="btn_P13P14" style="height:50px;width:25px" />
</td>
</tr>
<tr>
<td>
<input type="button" class="LBledClass" name="P11P12" id="btn_P11P12" style="height:50px;width:50px" />
<input type="button" class="LBledClass" name="P07P10" id="btn_P07P10" style="height:25px;width:25px" />
</td>
<td>
<input type="button" class="BledClass" name="P00P01" id="btn_P00P01" style="height:50px;width:50px" />
<input type="button" class="BledClass" name="P02P03" id="btn_P02P03" style="height:25px;width:50px" />
</td>
<td>
<input type="button" class="RBledClass" name="P04P05" id="btn_P04P05" style="height:50px;width:50px" />
<input type="button" class="RBledClass" name="P14P15" id="btn_P14P15" style="height:25px;width:25px" />
</td>
</tr>
</table>
<table id="RightPanel" width="100" height="150" bgcolor="red" border="0">
<tr>
<td>
<p class="t">Claw</p>
</td>
<td>
<p class="t">Boom</p>
</td>
</tr>
<tr>
<td>
<input type="button" class="BTN" value="Open" name="OClaw" id="btn_oClaw" style="height:20px;width:50px" />
</td>
<td>
<input type="button" class="BTN" value="Raise" name="RBoom" id="btn_rBoom" style="height:20px;width:50px" />
</td>
</tr>
<tr>
<td>
<input type="button" class="BTN" value="Close" name="CClaw" id="btn_cClaw" style="height:20px;width:50px" />
</td>
<td>
<input type="button" class="BTN" value="Lower" name="LBoom" id="btn_lBoom" style="height:20px;width:50px" />
</td>
</tr>
<tr>
<td colspan="2">
<p class="t">PanCam</p>
</td>
</tr>
<tr>
<td>
<input type="button" class="BTN" value="Left" name="LPancam" id="btn_lPancam" style="height:20px;width:50px" />
</td>
<td>
<input type="button" class="BTN" value="Right" name="RPancam" id="btn_rPancam" style="height:20px;width:50px" />
</td>
</tr>
<tr>
<td>
<p class="t">Elbow</p>
</td>
<td>
<p class="t">Future</p>
</td>
</tr>
<tr>
<td>
<input type="button" class="BTN" value="Raise" name="RElbow" id="btn_rElbow" style="height:20px;width:50px" />
</td>
<td>
<input type="button" class="BTN" value="Left" name="LFuture" id="btn_lFuture" style="height:20px;width:50px" />
</td>
</tr>
<tr>
<td>
<input type="button" class="BTN" value="Lower" name="LElbow" id="btn_lElbow" style="height:20px;width:50px" />
</td>
<td>
<input type="button" class="BTN" value="Right" name="RFuture" id="btn_rFuture" style="height:20px;width:50px" />
</td>
</tr>
</table>
<ul id="Tmess"></ul>
<!--Script references. -->
<!--Reference the jQuery library. -->
<script src="Scripts/jquery-1.6.4.min.js"></script>
<!--Reference the SignalR library. -->
<script src="Scripts/jquery.signalR-2.0.3.min.js"></script>
<!--Reference the autogenerated SignalR hub script. -->
<script src="http://192.168.2.101:8081/signalr/hubs"></script>
<!--Add script to update the page and send messages.-->
<script type="text/javascript" src="Scripts/Centauri.js"></script>
</body>
</html>
没有任何效果。
非常感谢,
最诚挚的问候,
答案 0 :(得分:0)
好的,
我找到了解决方案。
我需要编辑applicationhost.config文件,因为某些原因,url字符串中的更改没有生效。
<site name="JavascriptClient" id="7">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\oloyau\OneDrive\Freelance\1 - Completed\NI USB6501\CentauriBotServer\BotSeverSignalR\C#\JavascriptClient" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:31072:**localhost**" />
</bindings>
</site>
通过将绑定协议参数中的localhost部分更改为
:31072:
它是斜体,但它实际上被*包围,我不知道如何显示它们而不是斜体格式,抱歉。
现在它适用于我网络上的其他计算机。
希望这可以帮助下一个陷入困境的人......
由于