【问题标题】:How to read objects from REST API using python?如何使用 python 从 REST API 读取对象?
【发布时间】:2016-07-07 16:47:22
【问题描述】:

谁能知道如何将来自 REST API 的数据合并到用 Python 编写的 RPi 上?有没有办法从远程服务器向 RPi 发送一些命令?对此的任何帮助将不胜感激。

【问题讨论】:

  • 这太模糊了。如果它是 REST API,那么根据定义,您可以通过 HTTP 查询它。你的问题到底是什么?
  • @DanielRoseman 其实我不是编程背景。但是,我想知道运行 REST API 的服务器/云是否能够向我的 RPi 发送任何命令?您可以认为 Global server 可以向各个用户发送任何命令吗?如果是,那怎么办?

标签: python api rest server raspberry-pi2


【解决方案1】:

RPi 使用的是 rest API,所以你可以在 python 中使用 urllib。

http://<ip of raspi>:3000/<pin>

source

示例:

    from urllib.request import Request, urlopen   
    q = Request(url_with_get_parameters)
    q.add_header('some_header_info', 'value' )
    q.add_header('Content-type', 'application/json')
    response = urlopen(q).read()

【讨论】:

    【解决方案2】:

    只保留问题范围的答案。可以使用 http 请求访问 Rest api。 python标准库有一个http客户端库,还有很多库there提供http client的功能,我个人喜欢requests

    所以基本上安装requests 然后。

    r = requests.get(url)
    
    data = r.json() # as its a rest api you can directly access the json object 
    
    print(data)
    

    【讨论】:

    • 感谢您的回复。看起来,代码用于从 REST API 中读取。反之亦然,比如 REST API 是否可以将对象发送到我的 Raspberry Pi (python)?
    • 是的 request.post 方法可以用于此,但请首先我建议您阅读 httprest。如果您认为答案是您的问题,也请接受答案:-)
    • 它在某种程度上回答了我的问题,但并不完全。到目前为止,我可以使用requests.get(url) 阅读。我什至可以将post 数据发送到 URL。但是,如果我想从 URL 向我的主机发送命令,该怎么做呢?
    • 根据我的理解回答,您可以使用rpc,使用rpc 的一种简单方法是使用json 作为传输,您可以获得有关它的信息。 here
    猜你喜欢
    • 2014-03-18
    • 1970-01-01
    • 1970-01-01
    • 2021-04-25
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多