向本地主机发送 HTTP 请求
Send HTTP request to localhost
我正在使用 Flask 构建 Rest API。 API 使用本地主机上 运行 的 Elasticsearch 数据。
是否可以从 Flask 路由向本地主机发送 HTTP 请求?
像这样:
@flashlog.route('/checkelasticisup')
def check_elastic_is_up():
res = requests.get('http://localhost:9200/')
return jsonify({'message': res.text})
我想 return 向客户端发送 GET 请求时得到的 Elasticsearch 响应 localhost:9200:
{
"name": "wEV_Spx",
"cluster_name": "elasticsearch",
"cluster_uuid": "dbPLLgYLRO69iYuT_pp4WA",
"version": {
"number": "6.3.0",
"build_flavor": "default",
"build_type": "deb",
"build_hash": "424e937",
"build_date": "2018-06-11T23:38:03.357887Z",
"build_snapshot": false,
"lucene_version": "7.3.1",
"minimum_wire_compatibility_version": "5.6.0",
"minimum_index_compatibility_version": "5.0.0"
},
"tagline": "You Know, for Search"
}
现在,我得到:
Network Error (dns_unresolved_hostname)
<HTML><HEAD>
<TITLE>Network Error</TITLE>
</HEAD>
<BODY>
<FONT face="Helvetica">
<big><strong></strong></big><BR>
</FONT>
<blockquote>
<TABLE border=0 cellPadding=1 width="80%">
<TR><TD>
<FONT face="Helvetica">
<big>Network Error (dns_unresolved_hostname)</big>
<BR>
<BR>
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
Your requested host "localhost" could not be resolved by DNS.
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica" SIZE=2>
<BR>
For assistance, contact your network support team.
</FONT>
</TD></TR>
</TABLE>
</blockquote>
</FONT>
</BODY></HTML>
如何向本地主机发送 HTTP 请求(我使用的是 Ubuntu 18.04 LTS)?
谢谢!!
正如@Metalik 所说,您必须将 localhost
替换为 127.0.0.1
才能正常工作。
问题出在我的代理配置上。没有配置要忽略的正确 IP。
在我的 Ubuntu 机器上将本地主机、127.0.0.1/8 和 ::1 添加到网络设置中的忽略主机字段后,一切正常。
我正在使用 Flask 构建 Rest API。 API 使用本地主机上 运行 的 Elasticsearch 数据。
是否可以从 Flask 路由向本地主机发送 HTTP 请求?
像这样:
@flashlog.route('/checkelasticisup')
def check_elastic_is_up():
res = requests.get('http://localhost:9200/')
return jsonify({'message': res.text})
我想 return 向客户端发送 GET 请求时得到的 Elasticsearch 响应 localhost:9200:
{
"name": "wEV_Spx",
"cluster_name": "elasticsearch",
"cluster_uuid": "dbPLLgYLRO69iYuT_pp4WA",
"version": {
"number": "6.3.0",
"build_flavor": "default",
"build_type": "deb",
"build_hash": "424e937",
"build_date": "2018-06-11T23:38:03.357887Z",
"build_snapshot": false,
"lucene_version": "7.3.1",
"minimum_wire_compatibility_version": "5.6.0",
"minimum_index_compatibility_version": "5.0.0"
},
"tagline": "You Know, for Search"
}
现在,我得到:
Network Error (dns_unresolved_hostname)
<HTML><HEAD>
<TITLE>Network Error</TITLE>
</HEAD>
<BODY>
<FONT face="Helvetica">
<big><strong></strong></big><BR>
</FONT>
<blockquote>
<TABLE border=0 cellPadding=1 width="80%">
<TR><TD>
<FONT face="Helvetica">
<big>Network Error (dns_unresolved_hostname)</big>
<BR>
<BR>
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
Your requested host "localhost" could not be resolved by DNS.
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica" SIZE=2>
<BR>
For assistance, contact your network support team.
</FONT>
</TD></TR>
</TABLE>
</blockquote>
</FONT>
</BODY></HTML>
如何向本地主机发送 HTTP 请求(我使用的是 Ubuntu 18.04 LTS)?
谢谢!!
正如@Metalik 所说,您必须将 localhost
替换为 127.0.0.1
才能正常工作。
问题出在我的代理配置上。没有配置要忽略的正确 IP。 在我的 Ubuntu 机器上将本地主机、127.0.0.1/8 和 ::1 添加到网络设置中的忽略主机字段后,一切正常。