擅长:python、mysql、java
<p>因为这就是你在剧本里安排的。您总是调用getstate端点,它显示您执行的最后一个命令,并将结果解析为<code>py_data</code>。现在,如果您输入了一个实际的命令,那么您也将发送该命令,但随后输出<code>py_data</code>的内容,而这些内容尚未更新。在</p>
<p>假设发送命令的结果是当前状态,那么您应该在else块中对该结果调用<code>json.loads</code>,并将其打印出来。在</p>
<p><strong>编辑</strong>好的,这里有一个重新定义的函数,它更有意义。在</p>
<pre><code>def controls(cmd):
if cmd != 'getstate':
requests.get("http://volumio.local:3000/api/v1/commands/?cmd=%s" % cmd)
volumio = requests.get("http://volumio.local:3000/api/v1/getstate")
vol_data = volumio.text
py_data = json.loads(vol_data)
print(py_data['title'], py_data['status'])
</code></pre>
<p>在这里,如果有命令,就执行命令,然后执行getstate调用。在</p>