2024-04-27 05:03:38 发布
网友
首先,我对编程很陌生。 我试图从bashshell中保存一个变量
>curl http://169.254.169.254/latest/meta-data/
该行将返回诸如local-ipv4之类的数据。我试着用phython和flask来保存这些变量。我写的
但这给了我一个运行时错误:在请求上下文之外工作。 有人能指导我去哪里寻找可能的解决办法吗?在
因为您只需要发出httpget请求并打印响应,所以不需要Flask。您可以使用urllib标准库来发送GET请求(https://docs.python.org/3/library/urllib.request.html):
urllib
import urllib.request def testRequest(): url1 = "http://169.254.169.254/latest/meta-data/" response = urllib.request.urlopen(url1) nameText = response.read().decode('utf-8') return nameText testOutput = testRequest() print testOutput
对这里的评论:
首先,使用requests,这是一个非常推荐的HTTP请求库,看起来您会很好。有了它,你可以:
requests
import requests url = "http://169.254.169.254/latest/meta-data/" resp = requests.get(url) print resp.text
关于您得到的错误runtime error : working outside of the request context,是因为通过testOutput = testRequest()你调用了一个属于Flask应用程序app的方法。与此错误相关的另一件事是您从未运行过Flask应用程序。要做到这一点,请在代码末尾包含这一点。在
runtime error : working outside of the request context
testOutput = testRequest()
Flask
app
但是,再说一遍,Flask是一个非常有用的web框架,它可以用来创建web站点、api、web应用程序等等。它非常有用,但我认为您可能不需要它来实现您要实现的目标。
关于requests和{}的更多信息:
因为您只需要发出httpget请求并打印响应,所以不需要Flask。您可以使用
urllib
标准库来发送GET请求(https://docs.python.org/3/library/urllib.request.html):对这里的评论:
首先,使用
requests
,这是一个非常推荐的HTTP请求库,看起来您会很好。有了它,你可以:关于您得到的错误
^{pr2}$runtime error : working outside of the request context
,是因为通过testOutput = testRequest()
你调用了一个属于Flask
应用程序app
的方法。与此错误相关的另一件事是您从未运行过Flask
应用程序。要做到这一点,请在代码末尾包含这一点。在但是,再说一遍,
Flask
是一个非常有用的web框架,它可以用来创建web站点、api、web应用程序等等。它非常有用,但我认为您可能不需要它来实现您要实现的目标。关于}的更多信息:
requests
和{相关问题 更多 >
编程相关推荐