我正在尝试向pi上安装的服务发送发布请求。这是我正在使用的应用程序:
const http = require('http')
const data = JSON.stringify({
Name:"MYONE",
})
const options = {
hostname: 'http://127.0.0.1',
port: 11555,
PATH:'/api/config',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': data.length
}
}
const req = http.request(options, (res) => {
console.log(`statusCode: ${res.statusCode}`)
res.on('data', (d) => {
process.stdout.write(d)
})
})
req.on('error', (error) => {
console.error(error)
})
req.write(data)
req.end()
应用程序应更改设备的名称。根据文档,如果“一切顺利”,返回状态应为200。 运行该应用程序,我得到以下信息:
node app.js
statusCode: 200
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title>Changing device name </title>
<link rel="stylesheet" type="text/css" href="/style.css" />
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
</head>
<frameset rows="52,20,16,*" frameborder="0" framespacing="0" border="0">
<frameset cols="*,771,*" frameborder="0" framespacing="0" border="0">
<frame src="/menu?logo=b" noresize scrolling="no" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
<frame name="toplogo" src="/menu?logo=t" noresize scrolling="no" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
<frame src="/white.html" noresize scrolling="no" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
</frameset>
<frame name="navibar" src="/menu" noresize scrolling="no" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
<frame name="submenu" src="/grey.html" noresize scrolling="no" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
<frame name="content" src="/menu?info=Browser" marginheight="0" marginwidth="0" framespacing="0" frameborder="0" border="0">
<noframes>You must use a browser with frame support to see this page.</noframes>
</frameset>
</html>
最后,我得到状态码200,但设备名称未更改。 知道我在这里缺少什么吗? 我希望我可以提供有关该服务的更多信息,但是我没有任何信息。