程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Axios 不调用本地主机 API大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Axios 不调用本地主机 API?

开发过程中遇到Axios 不调用本地主机 API的问题如何解决?下面主要结合日常开发的经验,给出你关于Axios 不调用本地主机 API的解决方法建议,希望对你解决Axios 不调用本地主机 API有所启发或帮助;

我有一个 3 层应用程序。 React 作为前端,flask 作为后端,MysqL 作为数据库。我完成了应用程序并且在本地运行良好。然后我将此代码推送到 AWS 实例以实现高可用性,但出现此错误。

xhr.Js:160 POST http://localhost:5000/authenticate net::ERR_CONNECTION_REFUSED

这是我的后端代码库

@app.route('/authenticate',methods=['POST'])
def singing():

if __name__ == "__main__":
    app.run(host='0.0.0.0')

前端:

handlesubmitClose(){
    axios.post('http://localhost:5000/authenticate',{
        "username": this.state.username,"password": this.state.password,})
      .then((responsE) => {
        console.log("response of HandlesubmitClose - Main Page")
        console.log(responsE);

它们都在同一个 ec2 实例和同一个 docker 中。我无法理解即使它们都在同一个实例上,为什么 Axios 无法获取烧瓶主机名,或者我在这里遗漏了什么。

技巧: 如果我将 Axios 从 localhost 更改为我的 ec2 公共 IP,它就可以工作。但这不是一个好的解决方案,因为我将此实例放入自动缩放组中,我不知道公共 IP 或它是动态的。所以,这个解决方案是不可行的

解决方法

此问题与 Flask 相关,与 Axios 无关。解决此问题的方法是将 app.run(host='0.0.0.0') 更改为 app.run(host='localhost')。否则在调用 http 请求时,将 URL 从 localhost 更改为您的 ec2 公共 IP。

大佬总结

以上是大佬教程为你收集整理的Axios 不调用本地主机 API全部内容,希望文章能够帮你解决Axios 不调用本地主机 API所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。