使用python向API发出请求
问题描述:
我已经使用python + flask创建并使用API。什么时候尝试使用邮递员或铬打api它工作正常,我能够到api。使用python向API发出请求
在另一方面,当我尝试使用Python
import requests
requests.get("http://localhost:5050/")
我得到407我想这对我们的环境的代理不是让我打本地主机。但由于IE/Chrome中的局域网设置,请求已经通过。
我曾尝试设置代理服务器,请求中的身份验证,现在我开始获取502(坏的网关)。如果我在API端看到,我看不到请求。我能做些什么来解决相同的问题。
答
根据requests module documentation你可以通过环境变量HTTP_PROXY(如果使用的Linux发行版)提供代理信息:
$ export HTTP_PROXY="http://corporate-proxy:port"
$ python
>>> import requests
>>> requests.get('http://localhost:5050/')
或提供代理关键字参数获得方法是直接:
import requests
proxies = {
'http': 'http://coporate-proxy:port',
}
requests.get('http://localhost:5050/', proxies=proxies)
答
尝试
import requests
from flask_cors import CORS, cross_origin
app = Flask(__name__)
cors = CORS(app, resources={r"/*": {"origins": "*"}})
requests.get("http://localhost:5050/")
尝试使用127.0.0.1:5050代替http url。 – Thaian
我认为你需要提供一些缺失的标题 –
你能够在浏览器中访问它吗? – DhKo