我正在尝试与连接到 IP 地址 192.168.1.1 的示波器连接。它有一个内置的网络服务器,由于缺乏更好的词,很烂。它有很多iframe
s 并且只能在 IE 中完全工作。我正在构建一个开源 Web 应用程序,该应用程序可以轻松地与示波器交互并使用 HighcartsJS 实时显示波形。
无论如何,我正在尝试在 Internet Explorer 中运行此代码(即使我想在 Chrome 中运行它),但没有成功:
REMOVED BECAUSE IT HAD SILLY MISTAKES
当我在 Internet Explorer 中打开文件时,我确实看到 URL 被重写为 localhost,即使 localhost 不是 192.168.1.1。输入 localhost 会将我带到我的本地 Web 服务器(所以如果我能弄明白的话,我愿意使用 PHP 来做这个 POST)。
非常感谢任何见解。谢谢阅读。
编辑:这是来自 Wireshark 的 TCP 流:
POST /Comm.html HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Referer: 192.168.1.1/Comm.html
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
Content-Type: text/plain
Accept-Encoding: gzip, deflate
Host: 192.168.1.1
Content-Length: 38
DNT: 1
Connection: Keep-Alive
Cache-Control: no-cache
COMMAND=CURVe?
gpibsend=Send
name=
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
MIME-Version: 1.0
Connection: close
Content-Type: text/html
Date: TUE --
Content-Length: 8506
<HTML>..NUMBERS/HTML CUT OUT TO SAVE SPACE....22,22,22,2</HTML>
到目前为止的结论:我意识到我的代码存在多个问题。但是,这有效:
$.ajax(
{
url: 'link',
dataType: 'text',
type: 'post',
data: {command: 'BEL',
gpibsend: 'Send'},
})
但这不是:我正在尝试读取 TCP 跟踪中详细说明的响应:
$.ajax(
{
url: 'http://192.168.1.1/Comm.html',
dataType: 'text',
type: 'post',
data: {command: 'ZOOM:HORIZONTAL:SCALE?',
gpibsend: 'Send'},
success: function(data)
{
window.alert(data)
}
})